1

I managed to make Tcp/Ip work over serial line. Please take a look at (socat: tunnel IP through TTY) for detailed set up.

However, the working case is done on computers running Ubuntu 12 and 13. My ultimate goal is to make it work on an embedded board running Linux kernel 2.4.25, which is rather old, but which I cannot change. The board kernel is pre-loaded with SLIP module, but without slattach command. What I do is cross-compile (mips-gcc) slattach, put into the board, and do exact same set up as in (socat: tunnel IP through TTY).

Here is my problem: I connect the board to a Ubuntu computer using serial cable, both sides' with sl0 set up, when I ping Ubuntu PC (10.0.0.2) from the board (10.0.0.3), the ping fails. I use wireshark to capture sl0 traffic at Ubuntu side, and find the ping packet is trucated, its length (63 bytes) is shorter than expected (84 bytes).

If I ping from Ubuntu to the board, from the wireshark capture, I can see the board receives ping request and send back ping reply, somehow the reply packet length is shorter, so ping fails at Ubuntu side as well.

Can anybody shed some light on this issue? In the beginning, I thought problem is at the kernel networking part. Now since the board even can send ping reply, I suspect maybe it is the serial driver.

Now I am stuck, and not sure how to proceed. I am not sure what is the chance of the authors of slip or slattach will come across my post. Is there any good forums for me to post such that the authors may see my question?

Community
  • 1
  • 1
djsg
  • 107
  • 1
  • 8

1 Answers1

1

Problem solved. It is the serial baudrate. I use higher rate (115200) instead of 19200, my ping packets get through the serial port without being truncated.

djsg
  • 107
  • 1
  • 8