On Fri, 2012-12-07 at 11:39 -0600, Dan Williams wrote: > On Fri, 2012-12-07 at 14:50 +0200, Mark Elkins wrote: > > Hi, I have several questions regarding NetworkManager. > > I'm using net-misc/networkmanager-0.9.4.0-r6 USE="avahi bluetooth > > dhcpcd gnutls introspection modemmanager ppp wext -connection-sharing > > -dhclient -doc -nss -resolvconf -wimax" (Gentoo-3.5.3, without > > '~amd64', on a 64-bit Dell XPS Laptop) > > > > The wireless card is (from 'lshw' command) > > > > product: Centrino Wireless-N 1030 [Rainbow Peak] > > vendor: Intel Corporation > > capabilities: pm msi pciexpress bus_master cap_list ethernet physical > > wireless > > configuration: broadcast=yes driver=iwlwifi driverversion=3.5.3-gentoo > > firmware=17.168.5.2 build 35905 ip=160.124.48.9 latency=0 link=yes > > multicast=yes wireless=IEEE 802.11bgn > > > > Everything more or less works fine, much better than when I was just > > running wpa_supplicant with its own Gnome-2 GTK gui-interface. > > There are some Gotcha's though. > > > > 1 - WPA-Supplicant would show all access points, giving SSID, Channel > > (1-14), strength (just not BSSID). I found this behaviour *very* useful. > > One had the opportunity to either have the same settings (PassPrase, > > etc) for all AP's with the same SSID, or a setting per BSSID. I have > > three different AP's at home, same SSID & PassPhrase. I still like to > > choose which one I connect to, or if one is missing, clue as to which > > one it i. > > NM supports "locking" a connection to a specific BSSID, which you do via > the "BSSID" entry in nm-connection-editor. So you'd create three > different connections, each named something different (My SSID 1, My > SSID 2, etc), but set them all to the same SSID and passphrase, but lock > each one to it's specific BSSID. I understand... > > $ nmcli dev wifi - will give me the info (except Frequency rather than > > channel No.) but I'd like to see that in the GUI. > > The ability to immediately 'see' was very useful at the last IGF meeting > > in Baku, I could see that the conference SSID was on the same channel at > > about the same strength - so I could see there was going to be an > > interference problem. (The 2.4 Wifi issues in Baku is another story!) > > It might be reasonable to show this in nm-applet's "Connection > information" menu (patches accepted), but it's unlikely we'll ever show > it in the actual dropdown menu scan list for space reasons. If its in "Connection information" - then have not we just connected to that AP? I'd prefer to be able to see it *before* making a connection. If its screen real-estate you are worried about - drive it via an option setting. You only need to show the alternatives for the SSID the mouse is on. > > 2a - I was using a Hook in dhcpcd to send back a secured nsupdate of my > > current IPv4 address. I've moved this code into > > '/etc/NetworkManager/dispatcher.d'. Ethernet connections work fine but > > wireless connections often do not have all the IPv4 variables set. I > > think its because DHCPCD has not yet got an IP address. How do I get a > > trigger sent to me after DHCP has finished? > > IPv6: I use RA's. No dhcpv6 server yet. My Kernel also creates a random > > IPv6 address for my laptop. I'd love for all IPv6 addresses to be > > available as Variables so I can do some DHCP Hook magic. > > NetworkManager runs both in parallel, and the first one that finishes > "wins" and the NetworkManager says it's online. It does this so that > you don't block for 2 minutes or more waiting for an RA that will never > come if the network isn't IPv6 enabled. In your case, IPv6 finishes > first, but you should be able to use the "dhcp4-change" event to get the > updated DHCP4 info. If that doesn't happen, then we should fix that. > Even better, we should have an ip4-change/ip6-change event which handles > these. I like the idea of a "change event" driven handler. Makes the most sense. > > 2b - I have a 'dispatcher' script to re-write my resolv.conf: > > cat /etc/resolv.conf{.head,,.tail} 2>/dev/null > /etc/resolv.conf.tmp > > mv -f /etc/resolv.conf.tmp /etc/resolv.conf > > This also doesn't work as expected. It seems NetworkManager re-writes > > 'resolv.conf' once again after dhcpcd has done its work, after > > dispatcher has run. > > What are you trying to add to resolv.conf? If you're trying to do local > caching nameserver, NetworkManager has that functionality built-in via > dnsmasq, including the ability to add custom dnsmasq configuration. If > you're trying to add search domains, you could add this via "prepend" > functionality to dhclient config files which get picked up by NM too. > > There is a need for more flexible DNS configuration though, and there > we've got some plans there. I've installed the latest (according to Gentoo) NM, 0.9.6.4. I've also included the 'resolvconf' flag to the compile - which adds the necessary control. Gentoo speak: net-misc/networkmanager-0.9.6.4 USE="avahi bluetooth connection-sharing dhcpcd doc gnutls introspection modemmanager ppp resolvconf wext -dhclient -nss -systemd -vala -wimax" > > 3 - Network Device priorities: in my 'NetBook', I have a GSM/3G sim > > card. I'd like it that if I'm out of Access point coverage, the 3G > > works, but once in 'known' AP range, 3G is switched off and WiFi runs, > > and if I plug into a wired Ethernet, that takes over. I've been caught > > more than once that when plugged in to Ethernet, data (a large, multi > > Gig file for entertainment purposes) was being copied over the Wifi over > > IPv6, where as I had my (dhcp-assigned) IPv4 (& IPv6) address on my > > Ethernet. > > The old WPA-Supplicant worked 'fine', ie switch off the Wifi when > > plugged into the Ethernet. > > Not sure how that happened, since the supplicant doesn't do anything > with wired. What likely happened here was that dhclient-script rewrote > your default route to point to wired whenever it got a least. The > problem is that in this scenario, you'd have two dhclients runing, one > for ethernet and one for wifi, and whenever a renew happens, each one > ovewrites the other one. Unless you have something like resolvconf > enabled, in which case I'd assume you have priority rules for eth* and > wlan*. > > In any case, this isn't possible with NetworkManager, though you can > emulate it through the use of dispatcher scripts. For example, when > NetworkManager signals that eth0 is "up", you could use 'nmcli nm wifi > off' to kill wifi entirely. When NM signals that eth0 is "down", you > can 'nmcli nm wifi on' to turn it back on. Same goes for wlan0 up/down. > This doesn't cover all cases, but quite a few of them. Thanks Dan but what I think one needs to do is to add a priority to connections and when more than one connection is possible, always just go for the 'best' (whatever that means - lowest number=highest priority?). If there are two different types of connections available with the same priority (and it makes sense) use both, ie - what happens now. -- . . ___. .__ Posix Systems - (South) Africa /| /| / /__ mje posix co za - Mark J Elkins, Cisco CCIE / |/ |ARK \_/ /__ LKINS Tel: +27 12 807 0590 Cell: +27 82 601 0496
Attachment:
smime.p7s
Description: S/MIME cryptographic signature