I regret needing to submit this patch but, in good contentiousness, I cannot let use of dnsmasq's RA service be generally enabled because of a problem. I am disabling the use of dnsmasq's RA rather than just deleting the code in the hope that the problem will be resolved. Right now I cannot guarantee that the problem will not exist with radvd. Although I seems to be able to make the problem happen, I have had limited success doing this "on demand". This patch file is being submitted as the "4th" files as part of the original 3 file set. I do not plan on running this patch since I will continue to troubleshoot the problem. The problem: Basically, it is that "occasionally," when libvirtd starts/restarts (such as when the packages are updated with a new version), and there is a virtual network with a IPv6 defintion which is autostarted, sometimes the dnsmasq will "overlay" the virtual networks IPv6 address on the system's REAL network interface and begin sending RA packets on the interface. I can see what the result is but, currently, I do not understand the cause. Thus, this also could happen with radvd. But, I have seen it happen with dnsmasq and I have not seen it happen with radvd. Currently, to remove the problem once it occurs is to destroy the virtual network and then restart the real network. I have proof that this occurred before the "bind-dynamic" patches were introduced so they are not an issue. --- src/network/bridge_driver.c | 3 ++- tests/networkxml2argvdata/dhcp6-nat-network.argv | 1 - tests/networkxml2argvdata/dhcp6-network.argv | 1 - tests/networkxml2argvdata/dhcp6host-routed-network.argv | 1 - tests/networkxml2argvdata/nat-network.argv | 2 -- 5 files changed, 2 insertions(+), 6 deletions(-) diff --git a/src/network/bridge_driver.c b/src/network/bridge_driver.c index a8f6d8e..ed03262 100644 --- a/src/network/bridge_driver.c +++ b/src/network/bridge_driver.c @@ -77,8 +77,9 @@ #define CHECK_VERSION_DHCP(CAPS) \ (dnsmasqCapsGetVersion(CAPS) >= 2064000) +/* termporarily disable dnsmasq's RA service */ #define CHECK_VERSION_RA(CAPS) \ - (dnsmasqCapsGetVersion(CAPS) >= 2064000) + (dnsmasqCapsGetVersion(CAPS) >= 9099000) /* Main driver state */ struct network_driver { diff --git a/tests/networkxml2argvdata/dhcp6-nat-network.argv b/tests/networkxml2argvdata/dhcp6-nat-network.argv index bdb64d6..a8caf81 100644 --- a/tests/networkxml2argvdata/dhcp6-nat-network.argv +++ b/tests/networkxml2argvdata/dhcp6-nat-network.argv @@ -11,4 +11,3 @@ dhcp-leasefile=/var/lib/libvirt/dnsmasq/default.leases dhcp-lease-max=493 dhcp-hostsfile=/var/lib/libvirt/dnsmasq/default.hostsfile addn-hosts=/var/lib/libvirt/dnsmasq/default.addnhosts -enable-ra diff --git a/tests/networkxml2argvdata/dhcp6-network.argv b/tests/networkxml2argvdata/dhcp6-network.argv index 42c7b35..4550aa9 100644 --- a/tests/networkxml2argvdata/dhcp6-network.argv +++ b/tests/networkxml2argvdata/dhcp6-network.argv @@ -11,4 +11,3 @@ dhcp-leasefile=/var/lib/libvirt/dnsmasq/default.leases dhcp-lease-max=240 dhcp-hostsfile=/var/lib/libvirt/dnsmasq/default.hostsfile addn-hosts=/var/lib/libvirt/dnsmasq/default.addnhosts -enable-ra diff --git a/tests/networkxml2argvdata/dhcp6host-routed-network.argv b/tests/networkxml2argvdata/dhcp6host-routed-network.argv index 9ee3c28..a7d4059 100644 --- a/tests/networkxml2argvdata/dhcp6host-routed-network.argv +++ b/tests/networkxml2argvdata/dhcp6host-routed-network.argv @@ -9,4 +9,3 @@ dhcp-no-override dhcp-range=2001:db8:ac10:fd01::1,static dhcp-hostsfile=/var/lib/libvirt/dnsmasq/local.hostsfile addn-hosts=/var/lib/libvirt/dnsmasq/local.addnhosts -enable-ra diff --git a/tests/networkxml2argvdata/nat-network.argv b/tests/networkxml2argvdata/nat-network.argv index e71f54b..012f3d5 100644 --- a/tests/networkxml2argvdata/nat-network.argv +++ b/tests/networkxml2argvdata/nat-network.argv @@ -10,5 +10,3 @@ dhcp-leasefile=/var/lib/libvirt/dnsmasq/default.leases dhcp-lease-max=253 dhcp-hostsfile=/var/lib/libvirt/dnsmasq/default.hostsfile addn-hosts=/var/lib/libvirt/dnsmasq/default.addnhosts -dhcp-range=2001:db8:ac10:fe01::1,ra-only -dhcp-range=2001:db8:ac10:fd01::1,ra-only -- 1.7.11.7 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list