http://bugzilla.mindrot.org/show_bug.cgi?id=792
           Summary: mtu and NAT wrong solution
           Product: Portable OpenSSH
           Version: -current
          Platform: All
        OS/Version: Linux
            Status: NEW
          Severity: major
          Priority: P4
         Component: Miscellaneous
        AssignedTo: openssh-bugs at mindrot.org
        ReportedBy: e_arizon_benito at yahoo.com
It's well known that ssh tunneling have problems crossing an IP masquerading
gateway and solutions point to reduce the interface MTU. But reducing the
interface MTU makes many other applications not to work or to run extremly
slowly. For example Windows clients behind the NAT can't connect to terminal
servers when I reduce it. 
So I think it must be considered a bug or a "requested feature" to let
ssh
choose the length of its own data packets.
Due to this problem I can't properly use ssh for tunneling VNC or SMB shares
or
even cvs (with -Z option activated).
P.S.:
 All the test I have made are based on ADSL 256/128 and RDSI connections.
 Also notice that all the VPN solutions I have tested provide for some method to
control packet length to avoid problems .( CIPE, POPTOP, OpenVPN) so maybe is
just a matter of "copy and paste" some free available code.
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
http://bugzilla.mindrot.org/show_bug.cgi?id=792 ------- Additional Comments From djm at mindrot.org 2004-01-22 07:40 ------- MTU is not relevant to port forwarding, as it happens at the application layer. Is that what you are referring to? ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee.
http://bugzilla.mindrot.org/show_bug.cgi?id=792 ------- Additional Comments From e_arizon_benito at yahoo.com 2004-01-22 08:20 ------- Well, the problem affect ssh in general when traversing a NAT (IP masquerading) firewall. But since sshd is usually located in the gateway-NAT and used as Tunel terminator the problem get mainly noticed when tunneling (port forwarding) some other protocol (VNC, SMB, ...). More info available on this issue in: http://www.snailbook.com/faq/mtu-mismatch.auto.html ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee.
http://bugzilla.mindrot.org/show_bug.cgi?id=792
dtucker at zip.com.au changed:
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |INVALID
------- Additional Comments From dtucker at zip.com.au  2004-01-22 11:08 -------
Actually, the problem can affect any application, it's just that ssh's
traffic
patterns hit the problem more often than most.
TCP has an elegant solution to the problem called "Path MTU Discovery"
(which
the FAQ mentions it but does not detail): the stack sets the DF bit on the
outgoing TCP segments and relies on ICMP "fragmentation neeeded"
messages being
sent back if the size exceeds the MTU on the way.  The problem is many firewalls
and NAT devices drop those ICMP packets.  Try turing it on if your hosts support
it.
OpenSSH works with TCP.  IP Packet sizes and interface MTUs are not its problem.
 The MTU fix in the FAQ is a really a work-around for broken networks.  If you
aren't happy with the performance, fix your network.  Otherwise live with
it.
BTW:
* if you have apps that don't work with lower MTUs either the app or the IP
stack is broken.  Note that you'll have to reduce the MTU on *all* of the
machines behind your NAT box.
* The other products you mention are all packet-based VPNS.  OpenSSH isn't.
(OpenVPN and CIPE use UDP for data packets, PoPToP uses IP directly).
* If you're using ADSL you're probably using PPPoE.  If that's the
case, you
only need to reduce the MTU to 1492 (assuming you're using classic ethernet
encapsulation, if you're using 802.3 then subtract another 8 bytes).
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.