OpenVPN nutzt zur Bestimmung der Maximum Transmission Unit (MTU) ICMP Pakete des Typs 3. Dafür ist es dringend erforderlich das man diese auch an der Firewall zulässt.
If a software or hardware firewall is in place (especially if the firewall is whitelisting connections), make sure it is allowing ICMP Destination Unreachable: Fragmentation Needed (ICMP Type 3, Code 4) into your network. Windows Firewall, by default, has this rule configured, and there is no need to add this rule explicitly on Windows machines.
Quelle: docs.openvpn.net
Wenn man sich das auf dem VPN Server anschaut sieht das so aus:
tcpdump -i eth0 -p icmp
11:01:01.298080 IP 1.1.1.1 > vpn.chr.istoph.de: ICMP 1.1.1.1 unreachable - need to frag (mtu 1418), length 36
11:01:01.298084 IP 1.1.1.1 > vpn.chr.istoph.de: ICMP 1.1.1.1 unreachable - need to frag (mtu 1418), length 36
Als Empfehlung gebe ich mit mindestens die folgende Pakete freizuschalten.
iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT -m comment --comment "ICMP Echo Reply"
iptables -A INPUT -p icmp --icmp-type 3 -j ACCEPT -m comment --comment "ICMP Destination Unreachable"
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT -m comment --comment "ICMP Echo Request"
iptables -A INPUT -p icmp --icmp-type 11 -j ACCEPT -m comment --comment "ICMP Time Exceeded"