豆知識

FreeBSD 上でネットワークインターフェイスの MTU を小さくしたあと、
元の MTU に戻しても小さい MTU で通信する。

カーネルルーティングテーブルが MTU を覚えてるのが原因。

long# ping -s 1400 -c 1 union
PING union.muranet.jp (192.168.1.62): 1400 data bytes
1408 bytes from 192.168.1.62: icmp_seq=0 ttl=64 time=0.270 ms

--- union.muranet.jp ping statistics ---
1 packets transmitted, 1 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 0.270/0.270/0.270/0.000 ms
long# ifconfig nfe0 mtu 100
long# ping -s 1400 -c 1 union
PING union.muranet.jp (192.168.1.62): 1400 data bytes

--- union.muranet.jp ping statistics ---
1 packets transmitted, 0 packets received, 100.0% packet loss
long# ifconfig nfe0 mtu 1500
long# netstat -rnW -f inet
Routing tables

Internet:
Destination        Gateway            Flags    Refs      Use    Mtu    Netif Expire
default            192.168.1.1        UGS         0   792197    100     nfe0
127.0.0.1          127.0.0.1          UH          0    16669  16384      lo0
192.168.1.0/24     link#3             UC          0        0   1500     nfe0
192.168.1.1        00:80:c8:ca:c4:ca  UHLW        2    10610    100     nfe0   1037
192.168.1.2        00:18:f3:ab:4d:d1  UHLW        1        8  16384      lo0
192.168.1.31       00:c0:b7:6a:b3:20  UHLW        1       66   1500     nfe0    773
192.168.1.62       00:1a:4d:45:e8:b4  UHLW        1       21    100     nfe0   1150
long# ping -s 1400 -c 1 union
PING union.muranet.jp (192.168.1.62): 1400 data bytes

--- union.muranet.jp ping statistics ---
1 packets transmitted, 0 packets received, 100.0% packet loss
long# route delete 192.168.1.62
delete host 192.168.1.62
long# ping -s 1400 -c 1 union
PING union.muranet.jp (192.168.1.62): 1400 data bytes
1408 bytes from 192.168.1.62: icmp_seq=0 ttl=64 time=0.398 ms

--- union.muranet.jp ping statistics ---
1 packets transmitted, 1 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 0.398/0.398/0.398/0.000 ms
long#

いつ役に立つのか良く分からない豆知識です。

追記
こちらの方が賢い。

long# route change 192.168.1.62 -mtu 1500
change host 192.168.1.62
long#