Dear Marek,
The ping with 1500 byte packets works.
The three nodes are connected in this way: B1 --- batman --- GW1 ------- EX1 eth1 on B1 and GW1 is managed by batman. eth2 on gw1 not. The IP configuration is:
B1: # ip a eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000 link/ether 52:54:00:00:20:01 brd ff:ff:ff:ff:ff:ff bat0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1476 qdisc pfifo_fast state UNKNOWN qlen 1000 link/ether 00:ff:ad:e2:6f:dd brd ff:ff:ff:ff:ff:ff inet 192.168.100.2/24 brd 192.168.100.255 scope global bat0 # ip r 192.168.100.0/24 dev bat0 proto kernel scope link src 192.168.100.2 default via 192.168.100.3 dev bat0
GW1; # ip a eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000 link/ether 52:54:00:00:30:01 brd ff:ff:ff:ff:ff:ff eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000 link/ether 52:54:00:00:30:02 brd ff:ff:ff:ff:ff:ff inet 192.168.20.3/24 brd 192.168.20.255 scope global eth2 bat0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1476 qdisc pfifo_fast state UNKNOWN qlen 1000 link/ether 00:ff:15:c2:d0:73 brd ff:ff:ff:ff:ff:ff inet 192.168.100.3/24 brd 192.168.100.255 scope global bat0 # ip r 192.168.100.0/24 dev bat0 proto kernel scope link src 192.168.100.3 192.168.20.0/24 dev eth2 proto kernel scope link src 192.168.20.3
EX1: # ip a bat0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000 link/ether 00:ff:a1:ff:bb:32 brd ff:ff:ff:ff:ff:ff eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000 link/ether 52:54:00:00:40:01 brd ff:ff:ff:ff:ff:ff inet 192.168.20.4/24 brd 192.168.20.255 scope global eth1 # ip r 192.168.20.0/24 dev eth1 proto kernel scope link src 192.168.20.4 default via 192.168.20.3 dev eth1
I repeated the TCP test between B1 (server) and EX1 (client); the dump on B1 is:
20:04:28.900000 BAT 52:54:00:00:30:01 > 52:54:00:00:20:01: UCAST, ttl 50, IP 192.168.20.4.39127 > 192.168.100.2.8001: TCP, flags [.S....], length 12 20:04:28.910000 BAT 52:54:00:00:20:01 > 52:54:00:00:30:01: UCAST, ttl 50, IP 192.168.100.2.8001 > 192.168.20.4.39127: TCP, flags [.S..A.], length 12 20:04:28.920000 BAT 52:54:00:00:30:01 > 52:54:00:00:20:01: UCAST, ttl 50, IP 192.168.20.4.39127 > 192.168.100.2.8001: TCP, flags [....A.], length 0 20:04:29.820000 BAT 52:54:00:00:30:01 > 52:54:00:00:20:01: UCAST, ttl 50, IP 192.168.20.4.39127 > 192.168.100.2.8001: TCP, flags [...PA.], length 4 20:04:29.830000 BAT 52:54:00:00:20:01 > 52:54:00:00:30:01: UCAST, ttl 50, IP 192.168.100.2.8001 > 192.168.20.4.39127: TCP, flags [....A.], length 0 20:04:29.830000 BAT 52:54:00:00:20:01 > 52:54:00:00:30:01: UCAST, ttl 50, IP 192.168.100.2.8001 > 192.168.20.4.39127: TCP, flags [...PA.], length 6 20:04:29.830000 BAT 52:54:00:00:20:01 > 52:54:00:00:30:01: UCAST, ttl 50, IP 192.168.100.2.8001 > 192.168.20.4.39127: TCP, flags [F...A.], length 0 20:04:29.850000 BAT 52:54:00:00:30:01 > 52:54:00:00:20:01: UCAST, ttl 50, IP 192.168.20.4.39127 > 192.168.100.2.8001: TCP, flags [....A.], length 12 20:04:32.830000 BAT 52:54:00:00:20:01 > 52:54:00:00:30:01: UCAST, ttl 50, IP 192.168.100.2.8001 > 192.168.20.4.39127: TCP, flags [...PA.], length 6 20:04:38.830000 BAT 52:54:00:00:20:01 > 52:54:00:00:30:01: UCAST, ttl 50, IP 192.168.100.2.8001 > 192.168.20.4.39127: TCP, flags [...PA.], length 6 20:04:42.290000 BAT 52:54:00:00:30:01 > 52:54:00:00:20:01: UCAST, ttl 50, IP 192.168.20.4.39127 > 192.168.100.2.8001: TCP, flags [F...A.], length 12 20:04:42.290000 BAT 52:54:00:00:20:01 > 52:54:00:00:30:01: UCAST, ttl 50, IP 192.168.100.2.8001 > 192.168.20.4.39127: TCP, flags [....A.], length 0
and you can find as attachment problem.cap, that contains the dump on EX1. As you can see, packets arrive to EX1, but it seems that the application doesn't recognize them and B1 sends it again! (I ended the communication closing server application).
I have repeated the test without batman and everything works fine (ok.cap is the dump on EX1 in this case). A question: am I the first one with this problem? thanks
andrea
2009/10/5 Marek Lindner lindner_marek@yahoo.de
On Monday 05 October 2009 20:12:20 a wrote:
No,
it is not a MTU problem. TCP packet are small (I'm sending only few characters) and big packet size (1400 byte) ping works
The limit on ethernet is 1500 bytes - please try that. If that still works you should log the traffic on the GW with "batctl td" to see what your packets are doing. Feel free to post the log here if you need help.
Regards, Marek _______________________________________________ B.A.T.M.A.N mailing list B.A.T.M.A.N@lists.open-mesh.net https://lists.open-mesh.net/mm/listinfo/b.a.t.m.a.n