dev/em: Link is not up until 2 seconds after "ifconfig up"
Jun Kuriyama
kuriyama at imgsrc.co.jp
Sun Dec 7 18:17:01 PST 2003
At Sun, 7 Dec 2003 20:09:41 -0600,
Dan Nelson wrote:
> You may need to disable other stuff too; modern switches autosense much
> more than just speed and duplex. Cisco switches have enough features
> enabled on their ports by default that it can take up to 30 seconds for
> traffic to start passing after plugging in a cable.
> http://www.cisco.com/warp/public/473/12.html
My switch (Allied Telesis 8216XL2) has MDI (straight or cross)
autoselection, but of course I disabled it. I cannot find other
configurable flags in 8216XL2's menu.
> Do you really need to down then up your interface for vrrp to work?
> Why can't you just change the MAC address on the fly? If I change the
> MAC address on my active card with "ifconfig fxp0 ether
> 01:02:03:04:05:06", it sends out a gratuitous arp to let everyone know
> of the change, and traffic never stops.
Hmm, that's why freevrrpd is doing so. I'll try to modify skipping
interface down/up.
----- vrrp_state.c
vrrp_thread_mutex_lock();
vrrp_interface_vripaddr_delete(vr);
ethaddr = vrrp_list_get_last(vr);
if (vrrp_interface_down(vr->vr_if->if_name) == -1) {
vrrp_thread_mutex_unlock();
return -1;
}
if (vrrp_interface_ethaddr_set(vr->vr_if->if_name, ðaddr) == -1) {
vrrp_thread_mutex_unlock();
return -1;
}
bcopy(ðaddr, &vr->vr_if->actualethaddr, sizeof(struct ether_addr));
if (vrrp_interface_up(vr->vr_if->if_name) == -1) {
vrrp_thread_mutex_unlock();
return -1;
}
if (vrrp_network_send_gratuitous_arp_ips(vr, ðaddr) == -1)
return -1;
vrrp_thread_mutex_unlock();
-----
--
Jun Kuriyama <kuriyama at imgsrc.co.jp> // IMG SRC, Inc.
<kuriyama at FreeBSD.org> // FreeBSD Project
More information about the freebsd-current
mailing list