Skip to content

Commit fea2d5f

Browse files
committed
Let userland proxy handle container-bound traffic
1 parent dcf9dfb commit fea2d5f

1 file changed

Lines changed: 3 additions & 2 deletions

File tree

network.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -253,6 +253,7 @@ func (mapper *PortMapper) setup() error {
253253

254254
func (mapper *PortMapper) iptablesForward(rule string, port int, proto string, dest_addr string, dest_port int) error {
255255
return iptables("-t", "nat", rule, "DOCKER", "-p", proto, "--dport", strconv.Itoa(port),
256+
"!", "-i", NetworkBridgeIface,
256257
"-j", "DNAT", "--to-destination", net.JoinHostPort(dest_addr, strconv.Itoa(dest_port)))
257258
}
258259

@@ -264,7 +265,7 @@ func (mapper *PortMapper) Map(port int, backendAddr net.Addr) error {
264265
return err
265266
}
266267
mapper.tcpMapping[port] = backendAddr.(*net.TCPAddr)
267-
proxy, err := NewProxy(&net.TCPAddr{IP: net.IPv4(127, 0, 0, 1), Port: port}, backendAddr)
268+
proxy, err := NewProxy(&net.TCPAddr{IP: net.IPv4(0, 0, 0, 0), Port: port}, backendAddr)
268269
if err != nil {
269270
mapper.Unmap(port, "tcp")
270271
return err
@@ -278,7 +279,7 @@ func (mapper *PortMapper) Map(port int, backendAddr net.Addr) error {
278279
return err
279280
}
280281
mapper.udpMapping[port] = backendAddr.(*net.UDPAddr)
281-
proxy, err := NewProxy(&net.UDPAddr{IP: net.IPv4(127, 0, 0, 1), Port: port}, backendAddr)
282+
proxy, err := NewProxy(&net.UDPAddr{IP: net.IPv4(0, 0, 0, 0), Port: port}, backendAddr)
282283
if err != nil {
283284
mapper.Unmap(port, "udp")
284285
return err

0 commit comments

Comments
 (0)