System doesn't detect unplugged network cable and doesn't set interface up properly with DHCP

Kevin Lo kevlo at kevlo.org
Fri Jul 13 01:42:57 UTC 2012


Yuri wrote:
> I have the simplest possible DHCP setup: ifconfig_re0="DHCP" in 
> /etc/rc.conf.
> 
> When the system boots, it gets connected fine.
> 
> Now,  I disconnect my laptop and connect it to another network.
> When cable is disconnected, IP address of this interface stays the same, 
> old one is not removed.
> When I plug it into another network, the same IP address stays. New IP 
> doesn't get set. This is bad.
> So I have to manually do 'ifconfig re0 down && remove <OLD-IP> && 
> ifconfig re0 up'.
> 
> I believe, once interface is set as "DHCP", all those things should 
> happen automatically. dhclient should drop the old IP when cable is 
> unplugged, and should set it up anew when cable is plugged back.
> 
> Is my system misconfigured in some way, or this is the way how it works 
> in FreeBSD?

Add the following lines to /etc/devd.conf:

notify 0 {
        match "system"          "IFNET";
        match "type"            "LINK_DOWN";
        media-type              "ethernet";
        action "/etc/rc.d/dhclient quietstop $subsystem; ifconfig
$subsystem inet 0.0.0.0";
};

Then restart devd(8).

> Yuri

	Kevin



More information about the freebsd-net mailing list