What I do is just use a vagrant ssh --comand to get the output and pipe to a local file. In our case we use puppet so the example uses "facter" but you can get the info anyway you want.
vagrant ssh --command "facter --json -p" > instancefacts.json
vagrant ssh --command "facter -p ipaddress" > ipaddress.txt
I can then load the ipaddress.txt or I can load the json and use it to get that data or get the dns name and much, much more.
If you have ec2tools installed on your instance you could also use something like ec2-describe-instances or the myriad of other ec2 tools to get info about the system if setup properly.
As long as you are not using any "puts" in your vagrant that will mess up the output you can use this technique for just about anything.
I also add:
aws.ssh_host_attribute = :dns_name
to my aws vm provider. This way the vagrant ssh will work from an internal ec2 network (I launch ec2 vagrant images from an existing ec2 instance) or from an external network if you launch it from a local server or desktop.
Thanks,
robo