Hi, first of all thank you for your ACA500+, ACA1234 and X-Surf products. I really appreciate them.
Now:
Description
I'm using the AmiTCP stack installed from the "aca500p-installnetwork" package. First of all, I'm not sure what version of AmiTCP is this because the readmes or the help files don't say that, but nevermind that.
Recently I wanted to try out some of the BBSes that are still around. In particular, I was trying to connect to the Particles BBS at particlesbbs.dyndns.org:6400. Now, I can connect to this BBS just fine from the telnet on PC, but the DCTelnet on the Amiga is stuck at the "Connecting" stage and then times out . The network works fine on the Amiga in the other aspects (AWeb, ping, FTP). Thinking that this may be some known issue with this BBS I contacted the owner of the BBS on Twitter here: https://twitter.com/robikz1/status/1553086718554824705 (please see the replies below this tweet).
I decided to investigate this problem. Through some routing machinations, I was able to sniff on the packets that come out of the Amiga and the only packet that comes out of it when trying to contact Particles is the TCP SYN packet. The TCP SYN-ACK reply from the BBS never arrives.
With some further investigation I was able to replicate this behavior on a Linux PC by forcing the TCP MSS to 512 with the following command:
The packet sniffer confirms that this triggers the exactly same problem as I'm observing with AmiTCP.
Now, the root cause of the issue may be that the Particles BBS simply doesn't handle this packet as it should, but the fact is that this could be fixed by simply increasing the TCP MSS on the Amiga somehow.
I tried to figure this out on my own: how to increase the default MSS value. I even went deep into AmiTCP 2.2's source-code to find how the MSS value is determined. The code suggested that it's derived from the route's MTU but I failed to adjust that. So, please tell me, how can I increase the TCP MSS from the default 512?
Steps to reproduce
- Install the AmiTCP stack.
- Install DCTelnet 1.5 from Aminet
- Try to connect to particlesbbs.dyndns.org 6400
Current result
The connection times out even though the BBS is operating normally.
Workarounds
- If you have a Linux box in your network you can establish a socat proxy that will work as a MITM and retranslate the TCP packets. This is cumbersome and should not be necessary to use in a network that otherwise operates normally.
- Install the Miami or Roadshow TCP stacks. I tried them and they do fix the problem. But I don't want to use them for reasons. I prefer the AmiTCP stack.
So, again, please advise how can I increase the default TCP MSS??