devopsgroup-io/vagrant-hostmanager

Add ::1 to hosts on host machine?

runofthemill opened this issue · 1 comments

Hi there! One of the projects I use frequently, https://github.com/roots/trellis, uses vagrant-hostmanager to manage the hosts file on the host for accessing local VMs. For whatever reason, connecting to the VMs in the browser is incredibly slow when there's only an IPv4 entry in hosts, and I've been able to fix it by adding a separate entry for ::1. A section of /etc/hosts might look like this:

## vagrant-hostmanager-start id: a361872c-e564-44a3-998e-962e4e0c46e8
192.168.50.5	gr.test
192.168.50.5	www.gr.test
## vagrant-hostmanager-end

::1				gr.test

I'd love to do this programmatically, so I was curious if this is something the plugin is currently capable of (perhaps undocumented) or something that could be added as a feature?

Thank you!

I needed to do something similar today. Using the Custom IP resolver functionality seems to do the trick as it will take any output and write to /etc/hosts. Try:

config.hostmanager.ip_resolver = proc do 
  `echo ::1`.rstrip  
end`

That would of course replace the IPv4 entry.