diff --git a/tcp.go b/tcp.go index e424f694d90dbfa908c1cb21069bbd01b4334e23..a206256818277a81691498bccc73584a88bab237 100644 --- a/tcp.go +++ b/tcp.go @@ -51,7 +51,11 @@ func tcpHandleConnection(conn net.Conn, logger *zap.Logger) { } targetAddr := Opts.TargetAddr6 - if AddrVersion(saddr) == 4 { + if saddr == nil { + if AddrVersion(conn.RemoteAddr()) == 4 { + targetAddr = Opts.TargetAddr4 + } + } else if AddrVersion(saddr) == 4 { targetAddr = Opts.TargetAddr4 }