macvlan デバイスは物理デバイスより小さい MTU をサポートしません。

macvlan デバイスは物理デバイスより小さい MTU をサポートしません。

同じ物理イーサネットデバイスから複数のMACVLANデバイスを作成するユースケースがあります。さらに、一部のMACVLANはジャンボパケット(MTU = 9215)を提供できなければなりませんが、一部のMACVLANはジャンボパケットを許可せず、小さなフレームのみをサポートする必要があります。物理デバイスに対してMTU = 9000を予約し、必要なMACVLANデバイスを作成しました。 MACVLANデバイスのデフォルトMTUは9000であり、ジャンボフレームを処理すると正しく動作します(ジャンボパケットでpingを介してテストされます)。しかし、MACVLanのMTUを1500に変更しましたが、まだジャンボフレームでうまく機能しました。次の例では、MACVLAN が 1 つだけ表示されます。

$ ip link add K9AT9i1G2x link eth6 type macvlan mode bridge
$ ip link set dev K9AT9i1G2x mtu 1500
$ ip a
123: eth6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc mq state UP group default qlen 1000
    link/ether 00:60:16:a6:90:3a brd ff:ff:ff:ff:ff:ff
    inet6 fe80::260:16ff:fea6:903a/64 scope link
       valid_lft forever preferred_lft forever

129: K9AT9i1G2x@eth6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether ba:c7:36:3f:9a:76 brd ff:ff:ff:ff:ff:ff
    inet 192.168.15.40/21 scope global K9AT9i1G2x
       valid_lft forever preferred_lft forever
    inet6 fe80::b8c7:36ff:fe3f:9a76/64 scope link
       valid_lft forever preferred_lft forever

macvlanデバイスのMTUが1500に設定されていても、次のpingが機能します。

 # ping -c 3 -M do -s 8972 192.168.15.40

PING 192.168.15.40 (192.168.15.40) 8972(9000) bytes of data.
8980 bytes from 192.168.15.40: icmp_seq=1 ttl=64 time=27.0 ms
8980 bytes from 192.168.15.40: icmp_seq=2 ttl=64 time=0.955 ms
8980 bytes from 192.168.15.40: icmp_seq=3 ttl=64 time=5.33 ms

--- 192.168.15.40 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 0.955/11.098/27.009/11.391 ms

この場合、より小さなパケット転送を制限する方法を誰かが提案できますか?

ベストアンサー1

おすすめ記事