macvlan 장치는 물리적 장치보다 작은 MTU를 지원하지 않습니다.

macvlan 장치는 물리적 장치보다 작은 MTU를 지원하지 않습니다.

동일한 물리적 이더넷 장치에서 여러 MACVLAN 장치를 생성하는 사용 사례가 있습니다. 또한 일부 MACVLAN은 점보 패킷(MTU=9215)을 제공할 수 있어야 하지만 일부 MACVLAN은 점보 패킷을 허용하지 않고 작은 프레임만 지원해야 합니다. 물리적 장치에 대해 MTU=9000을 예약하고 필요한 MACVLAN 장치를 생성했습니다. MACVLAN 장치의 기본 MTU는 9000이며 점보 프레임을 처리할 때 제대로 작동합니다(점보 패킷으로 ping을 통해 테스트됨). 그러나 MACVLan의 MTU를 1500으로 변경했는데 여전히 점보 프레임에서 잘 작동했습니다. 아래 예에서는 MACVLAN이 하나만 표시됩니다.

$ 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

이 경우 더 작은 패킷 전송을 제한하는 방법을 누군가 제안할 수 있습니까?

관련 정보