I am trying to make on-line steam games work on my laptop. I have this problem: games can't connect to game servers if I run them on linux. If I run them on Windows they work fine. Other Windows laptop on this network works fine too. If I run the game on linux but on another network it works fine too.
Currently I think that MTU is the problem.
$ ip link list 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: enp1s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN mode DEFAULT group default qlen 1000 link/ether 68:f7:28:24:00:3f brd ff:ff:ff:ff:ff:ff 3: wlp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT group default qlen 1000 link/ether ac:d1:b8:76:05:5b brd ff:ff:ff:ff:ff:ff $ ping -M do -s 700 192.168.0.1 PING 192.168.0.1 (192.168.0.1) 700(728) bytes of data. ping: local error: Message too long, mtu=576 ping: local error: Message too long, mtu=576 ping: local error: Message too long, mtu=576 ^C --- 192.168.0.1 ping statistics --- 3 packets transmitted, 0 received, +3 errors, 100% packet loss, time 2004ms
My question is why does the
ip link list we can see that
mtu 1500. Also, I've set router's MTU to 1492 according to ISP's information.
UPD. I've found out that
576 Typically recommended as the MTU for dial-up type applications, leaving 536 bytes of TCP data.
192.168.0.108 is my IP,
192.168.0.1 is my router's IP.
$ ip route show default via 192.168.0.1 dev wlp3s0 src 192.168.0.108 metric 303 mtu 576 192.168.0.0/24 dev wlp3s0 proto kernel scope link src 192.168.0.108 metric 303 mtu 576
UPD 3 I've also tried to do
ping google.com -f -l 1480 on a Windows 10 laptop in the same network. It worked as it should. Lengths less than ~1500 pass and more than ~1500 need fragmenting. So, the problem is on my end.