Date: Sun, 14 Nov 2010 13:46:59 GMT From: Gleb Kurtsou <gleb.kurtsou@gmail.com> To: freebsd-gnats-submit@FreeBSD.org Subject: kern/152235: [net] Permanent local ARP entries are not properly updated after MAC address change Message-ID: <201011141346.oAEDkxpt068467@www.freebsd.org> Resent-Message-ID: <201011141350.oAEDo8G4023807@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 152235 >Category: kern >Synopsis: [net] Permanent local ARP entries are not properly updated after MAC address change >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sun Nov 14 13:50:08 UTC 2010 >Closed-Date: >Last-Modified: >Originator: Gleb Kurtsou >Release: 9.0-CURRENT >Organization: >Environment: >Description: The bug exists for a while already, it's probably related to import of new ARP/lltable code. If interface has more than one ip addressed assigned and interface ether (MAC) addresses is changed entries in ARP table are not properly updated. It happens because ARP tables are updated lazily but not on mac address change and all entries but one are always missed. >How-To-Repeat: # ifconfig em0 192.168.1.1 # dhclient em0 DHCPREQUEST on em0 to 255.255.255.255 port 67 DHCPACK from 10.0.2.2 bound to 10.0.2.15 -- renewal in 43200 seconds. # ifconfig em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=9b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM> ether 08:00:27:9f:f7:81 inet 192.168.1.1 netmask 0xffffff00 broadcast 192.168.1.255 inet 10.0.2.15 netmask 0xffffff00 broadcast 10.0.2.255 media: Ethernet autoselect (1000baseT <full-duplex>) status: active lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384 options=3<RXCSUM,TXCSUM> inet 127.0.0.1 netmask 0xff000000 inet6 ::1 prefixlen 128 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x2 nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL> # ping 10.0.2.2 PING 10.0.2.2 (10.0.2.2): 56 data bytes 64 bytes from 10.0.2.2: icmp_seq=0 ttl=63 time=0.768 ms 64 bytes from 10.0.2.2: icmp_seq=1 ttl=63 time=3.293 ms ^C --- 10.0.2.2 ping statistics --- 2 packets transmitted, 2 packets received, 0.0% packet loss round-trip min/avg/max/stddev = 0.768/2.030/3.293/1.263 ms # arp -an ? (10.0.2.15) at 08:00:27:9f:f7:81 on em0 permanent [ethernet] ? (192.168.1.1) at 08:00:27:9f:f7:81 on em0 permanent [ethernet] ? (10.0.2.2) at 52:54:00:12:35:02 on em0 expires in 1196 seconds [ethernet] # ifconfig em0 ether 08:00:27:9f:f7:aa em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=9b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM> ether 08:00:27:9f:f7:aa inet 192.168.1.1 netmask 0xffffff00 broadcast 192.168.1.255 inet 10.0.2.15 netmask 0xffffff00 broadcast 10.0.2.255 media: Ethernet autoselect (1000baseT <full-duplex>) status: active ### not updated until used again # arp -an ? (10.0.2.15) at 08:00:27:9f:f7:81 on em0 permanent [ethernet] ? (192.168.1.1) at 08:00:27:9f:f7:81 on em0 permanent [ethernet] ? (10.0.2.2) at 52:54:00:12:35:02 on em0 expires in 1160 seconds [ethernet] # ping 10.0.2.2 PING 10.0.2.2 (10.0.2.2): 56 data bytes ^C --- 10.0.2.2 ping statistics --- 2 packets transmitted, 0 packets received, 100.0% packet loss zsh: exit 2 ping 10.0.2.2 # dhclient em0 DHCPREQUEST on em0 to 255.255.255.255 port 67 DHCPACK from 10.0.2.2 bound to 10.0.2.15 -- renewal in 43200 seconds. # arp -an ? (10.0.2.15) at 08:00:27:9f:f7:aa on em0 permanent [ethernet] ? (192.168.1.1) at 08:00:27:9f:f7:81 on em0 permanent [ethernet] #### I don't expect entries to be deleted, they are permanent # arp -da 10.0.2.15 (10.0.2.15) deleted 192.168.1.1 (192.168.1.1) deleted # arp -an ? (10.0.2.15) at 08:00:27:9f:f7:aa on em0 permanent [ethernet] ? (192.168.1.1) at 08:00:27:9f:f7:81 on em0 permanent [ethernet] # arp -d 192.168.1.1 192.168.1.1 (192.168.1.1) deleted # arp -an ? (10.0.2.15) at 08:00:27:9f:f7:aa on em0 permanent [ethernet] ? (192.168.1.1) at 08:00:27:9f:f7:81 on em0 permanent [ethernet] >Fix: >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201011141346.oAEDkxpt068467>