I'm trying to test gre(4) tunnel.

Both machines in one LAN. OpenBSD has IP 192.50.51.52, another end -
192.50.51.28.

# ifconfig gre0
gre0: flags=9011<UP,POINTOPOINT,LINK0,MULTICAST> mtu 1476
       groups: gre
       physical address inet 192.50.51.52 --> 192.50.51.28
       inet6 fe80::204:23ff:fece:bbb4%gre0 ->  prefixlen 64 scopeid 0x17
       inet 192.168.254.254 --> 192.168.254.253 netmask 0xffffffff

When I ping 192.168.254.253 in 'tcpdump -evpni em0 proto gre' I see

20:28:38.627914 0:4:23:ce:bb:b4 0:16:cb:a2:8e:c5 0800 122: gre
192.50.51.52 > 192.50.51.28: [] 192.168.254.254 > 192.168.254.253:
icmp: echo request (id:bd53 seq:44) (ttl 255, id 3713, len 84) (DF)
(ttl 64, id 26235, len 108)

But MAC address of 192.50.51.28 is wrong!

# netstat -nr | grep 0:16:cb:a2:8e:c5
192.50.51.29       00:16:cb:a2:8e:c5  UHLc        1       62      -   em0
# netstat -nr | grep 192.50.51.28
192.50.51.28       00:e0:4d:02:d6:0e  UHLc        0       19      -   em0

So packages are sended on mac address of machine with next IP then it
must be. And I did not receive anything on 192.50.51.28! Tested with
different IP in LAN - it's used mac of machine with next IP. And if
the such machine is offline I get "Host is down" while pinging.

Is this a bug or I missed something?

Reply via email to