Uma máquina virtual do VMWare Player pode receber pacotes udp?

0

Eu tenho uma máquina virtual em execução no VMWare player v6. O tipo de rede é NAT. Um aplicativo em minha máquina virtual envia pacotes UDP para um servidor na rede da máquina host e precisa receber a resposta UDP do servidor contatado.

O caso de uso descrito não funciona na minha instalação - somente se eu alternar para o modo de ponte de rede.

Meço o tráfego de rede no modo NAT e vejo que os pacotes UDP deixam o vm e são enviados com endereço IP traduzido para o servidor. O servidor respondeu com um pacote upd ao ip do host, mas a máquina virtual não recebeu nenhum pacote

Então, minha pergunta é normalmente possível para um NAT vm receber tráfego UDP?

    
por OkieOth 08.10.2014 / 10:24

3 respostas

1

Sua situação não é diferente da experiência normal do usuário por trás de seus pequenos roteadores domésticos. É o trabalho do roteador que fornece NAT fazer exatamente isso: traduzir os endereços de rede entre a Internet real e a rede interna ("tradução de endereço de rede"). Mas, infelizmente, assim como a experiência normal do usuário por trás de seus pequenos roteadores domésticos: Para uma conexão que entra na rede, você precisa dizer ao roteador explicitamente para onde certas portas de entrada serão encaminhadas ("portforwarding"). Você pode configurar o encaminhamento de porta no "Vmware Network Editor", ver a imagem para ter uma idéia do que procurar:

Alémdisso:vejaosdocumentosoficiaisdovmwareesitesrelacionados:

por 08.10.2014 / 10:54
1

O problema, como você suspeita, é NAT. Isso é um truque, não uma tecnologia projetada adequadamente.

Em particular, o que está errado é que o TCP é orientado a conexões e o NAT mexa com cada conexão. Com o UDP, não há conexão e nenhuma solução de NAT decente. Existem algumas heurísticas para fazer algumas coisas funcionarem, em particular a adivinhação baseada em porta, mas a falha do UDP com o NAT não é incomum. No seu caso, o VMWare NAT simplesmente não adivinha que o pacote UDP retornado é destinado à VM.

    
por 08.10.2014 / 10:53
0

Se você tiver uma LAN privada (sim, WiFi é uma LAN para), considere trocar o adaptador de rede da VM para bridged . Em seguida, a VM atuará como um PC comum em sua rede (usando sua interface Ethernet de hosts).

    
por 08.10.2014 / 13:02