vagrant-landrush / landrush

A Vagrant plugin that provides a simple DNS server for Vagrant guests
MIT License
668 stars 80 forks source link

landrush host visibility of vm is not working on ubuntu 18.04 #342

Open kundeng opened 5 years ago

kundeng commented 5 years ago

I installed it and I can get vms to see each other, and as well as the internet(e.g. www.google.com) but

I can't seem to get my host to ping or resolve the vm's names.

I'm new to this, can someone explain what is wrong and how to fix it?

I checked the following on the host:

dig -p 10053 orc-app1.test @localhost and it works, proving that the landrush dns at 10053 is working fine.

I think my host is ubuntu 18.04 and it has that systemd-resolved stub listener running on port 53, so dnsmasq is not running at port 53. Is this a problem?

coelhoricardo commented 5 years ago

landrush is based on dnsmasq. but since 18.04, ubuntu replaced dnsmasq for systemd-resolved.

ericenns commented 5 years ago

I got this working on Ubuntu 18.04 by changing my /etc/systemd/resolved.conf to have the following content:

#  This file is part of systemd.                                                                                                                                                                                                                                                                                              
#                                                                                                                                                                                                                                                                                                                             
#  systemd is free software; you can redistribute it and/or modify it                                                                                                                                                                                                                                                         
#  under the terms of the GNU Lesser General Public License as published by                                                                                                                                                                                                                                                   
#  the Free Software Foundation; either version 2.1 of the License, or                                                                                                                                                                                                                                                        
#  (at your option) any later version.                                                                                                                                                                                                                                                                                        
#                                                                                                                                                                                                                                                                                                                             
# Entries in this file show the compile time defaults.                                                                                                                                                                                                                                                                        
# You can change settings by editing this file.                                                                                                                                                                                                                                                                               
# Defaults can be restored by simply deleting this file.                                                                                                                                                                                                                                                                      
#                                                                                                                                                                                                                                                                                                                             
# See resolved.conf(5) for details                                                                                                                                                                                                                                                                                            

[Resolve]                                                                                                                                                                                                                                                                                                                     
DNS=127.0.0.1                                                                                                                                                                                                                                                                                                                 
#FallbackDNS=                                                                                                                                                                                                                                                                                                                 
#Domains=                                                                                                                                                                                                                                                                                                                     
#LLMNR=no                                                                                                                                                                                                                                                                                                                     
#MulticastDNS=no                                                                                                                                                                                                                                                                                                              
#DNSSEC=no                                                                                                                                                                                                                                                                                                                    
#Cache=yes                                                                                                                                                                                                                                                                                                                    
DNSStubListener=no

The important parts are setting DNSStubListener=no which allows dnsmasq to run and setting DNS=127.0.0.1 which adds our dnsmasq server to the list of dns servers to query.

Kocal commented 4 years ago

@ericenns your solution works well to access the VM with the custom domain, but we don't have access to internet anymore (outside and inside the VM) :sweat_smile:

davividal commented 4 years ago

@Kocal can you try setting something as FallbackDNS?

Kocal commented 4 years ago

With 127.0.0.53 or a real DNS like 8.8.4.4? Also I'm not using Ubuntu 18.x anymore (I've used it as a spare wheel for 1 day), but you can ask to @RomulusED69 which has the same issue.

davividal commented 4 years ago

I would try with a real DNS like 8.8.8.8.