That's what I meant by special-case - NAT (which for FreeBSD means libalias)Quote:>>is a TCP connection to port 43 btw). It does special-case certain other
>>connections, primarily incoming FTP data connections (which can reasonably
>Besides the obvious NATd problem with mIRC's identd...I also have trouble
>with FTP servers on ports other than. Trying to connect to an FTP Server
>Port 30, for example, by a Win box from the subnet. The connection is made,
>but upon listing any directory it hangs and then finally gives the error
>msg, control connection closed.
>Why is this?
"understands" the FTP protocol, including the port numbers it uses and the
pattern of communication in a normal (active) FTP request. Since the only way
it can really know an FTP control connection from a popular garden tool is by
the port number, changing the port number turns off all the special-casing,
and the FTP control connection becomes just another TCP connection (as far as
natd is concerned). The result is that natd won't store the extra state or
jump through the extra hoops to make incoming FTP data connections work, so
they bounce off the NAT host. Using passive FTP will fix this, since NAT is
just fine with any outgoing TCP connection.
Again, this is also why some UDP services can work - inbuilt understanding
of the application protocol in question. It's not (by far) the most elegant
way to solve these problems, but it's currently the only one.
If you can't play with words, what good are they?