Encaminhar o tráfego para problemas do Docker

0

Eu tenho alguns problemas conceituais fundamentais, devido aos quais não sou capaz de encaminhar o tráfego em um contêiner docker contendo uma rede.

O contêiner do Docker está escutando em 2123 / udp

Abordagem 0 Publicar todo o argumento não parece funcionar. Não houve mapeamento / alteração no iptables antes e depois deste comando.

 docker run -d -P image

link

Abordagem 1 Eu quero enviar tráfego de qualquer interface / ip / port para um contêiner docker. Descobri que a maioria do meu tráfego está em eno1, ip = x.x.x.xe porta 22. Tentei vincular essa porta 22 ao docker usando

docker run -d -p 22:2123 image
As the port is active so it could not bind with port 22

Abordagem 2 Eu escolhi uma porta aleatória 80 e tentei publicá-la

docker run -d -p x.x.x.x:80:2123

Não imprimi nenhum erro. No entanto, quando eu envio pacotes para este ip e porta, a conexão é recusada.

Packets sent as follows.
dd if=/dev/zero bs=9000 count=1000 > /dev/tcp/x.x.x.x/80

Portanto, adicionei uma regra de encaminhamento de porta para encaminhar todo o tráfego recebido na porta 22 para x.x.x.x: 80.

echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING -p tcp --dport 22 -j DNAT --to-destination x.x.x.x:80

Ainda conexão recusada. Mesmo com essa conexão recusada, vi duas transações

 tcpdump -i any port 2123
 IP <dockerNWip>.37042 > <host>.2123: Flags [S], seq 1289990254, win 29200, options [mss 1460,sackOK,TS val 437161 ecr 0,nop,wscale 7], length 0
 IP <dockerNWip>.37042 > <host>.2123: Flags [S], seq 1289990254, win 29200, options [mss 1460,sackOK,TS val 437161 ecr 0,nop,wscale 7], length 0
 IP  <host>.2123 > <dockerNWip>.37042: Flags [R.], seq 0, ack 1289990255, win 0, length 0
 IP <host>.2123 > <dockerNWip>.37042: Flags [R.], seq 0, ack 1, win 0, length 0

Não sei onde está o problema. Minha pergunta

 1) Do i need to bind x.x.x.x and port 80? I thought the rule would do that.
 2) Do i need anything else besides the publishing the ports?
 3) Is my way to tcpdumping the port correct to monitor the traffic?

Minha estratégia / suposição era que a porta do host de ligação 80 com a porta do contêiner 2123 deveria rotear automaticamente o tráfego.

    
por RNA 28.04.2018 / 18:33

0 respostas