The ip link set command which create the veth pair is not setting mtu on both peers
example: vm 106 is on a bridge with mtu 9000 222: tap160i1: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9000 qdisc pfifo_fast master fwbr160i1 state UNKNOWN group default qlen 1000 223: fwbr160i1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 224: fwpr160p1@fwln160i1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc noqueue state UP group default qlen 1000 225: fwln160i1@fwpr160p1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 fwpr160p1@fwln160i1 is correctly created with mtu 9000 but fwln160i1@fwpr160p1 is created with mtu 1500. (and then vmbr106i1 is lowered to 1500 too). This is doing network problem, as tap160i1 is mtu9000. After this patch: 222: tap160i1: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 9000 qdisc pfifo_fast master fwbr160i1 state UNKNOWN group default qlen 1000 223: fwbr160i1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc noqueue state UP group default qlen 1000 224: fwpr160p1@fwln160i1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc noqueue state UP group default qlen 1000 225: fwln160i1@fwpr160p1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc noqueue state UP group default qlen 1000 --- src/PVE/Network.pm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/PVE/Network.pm b/src/PVE/Network.pm index 3421532..7cd6fc0 100644 --- a/src/PVE/Network.pm +++ b/src/PVE/Network.pm @@ -296,6 +296,8 @@ sub veth_create { system($cmd) == 0 || die "can't create interface $veth\n"; } + PVE::Tools::run_command(['/sbin/ip', 'link', 'set', $veth, 'mtu', $bridgemtu]); + # up vethpair disable_ipv6($veth); disable_ipv6($vethpeer); -- 2.11.0 _______________________________________________ pve-devel mailing list pve-devel@pve.proxmox.com https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel