TL;DR

shotgun -o 0.0.0.0 config.ru

You have to tell shotgun to use 0.0.0.0, the “all IP addresses on this box” IP address listen on. The default is 127.0.0.1, which is the loopback IP address on the vagrant instance.

Hope this helps someone.