PATCH: Re-add IPv6 link-local addr after disconnecting VPN



When disconnecting from a VPN  (in my case VPNC), NetworkManager flushes
all addresses from the physical device. Tracing it showed it doing:

  ip route del default
  ip addr flush dev eth1
  ip route flush dev eth1
  ip neigh flush all

This of course also blows away all the IPv6 addresses, including the 
link-local address required for stateless autoconf. The attached patch
against the 0.7.0 svn3138 snapshot used in Fedora 8 simply re-adds the
IPv6 link-local address after taking down the VPN connection. This
allows IPv6 autoconf to do its magic and restore connectivity.

This problem is also reported & unresolved in the Fedora BZ

  https://bugzilla.redhat.com/show_bug.cgi?id=233757

Regards,
Dan.
-- 
|=- Red Hat, Engineering, Emerging Technologies, Boston.  +1 978 392 2496 -=|
|=-           Perl modules: http://search.cpan.org/~danberr/              -=|
|=-               Projects: http://freshmeat.net/~danielpb/               -=|
|=-  GnuPG: 7D3B9505   F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505  -=| 
diff -rup NetworkManager-0.7.0.orig/src/vpn-manager/nm-vpn-connection.c NetworkManager-0.7.0.new/src/vpn-manager/nm-vpn-connection.c
--- NetworkManager-0.7.0.orig/src/vpn-manager/nm-vpn-connection.c	2007-11-14 11:00:59.000000000 -0500
+++ NetworkManager-0.7.0.new/src/vpn-manager/nm-vpn-connection.c	2007-12-15 13:31:19.000000000 -0500
@@ -727,6 +727,7 @@ connection_state_changed (NMVPNConnectio
 
 			/* Reset routes, nameservers, and domains of the currently active device */
 			nm_system_device_set_from_ip4_config (priv->parent_dev);
+			nm_system_device_add_ip6_link_address (priv->parent_dev);
 		}
 
 		if (priv->banner) {


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]