Como encontrar o endereço IP de origem? [fechadas]

1

Como encontrar o endereço IP padrão se eu estiver conectado a mais de uma rede? Eu encontrei um link

http://libtins.github.io/tutorial/sending/

Mas em "Envio de PDUs da camada de rede" Está escrito que

PacketSender sender;

IP pkt = IP ("192.168.0.1") / TCP (22) / RawPDU ("foo"); remetente.send (pkt);

Observe que nenhum endereço de origem foi especificado no construtor IP. Isso usa por padrão o endereço 0.0.0.0. No entanto, ao enviar PDUs da camada de rede, se o endereço de origem for 0.0.0.0, a PDU realizará uma pesquisa na tabela de roteamento para descobrir qual deve ser o endereço de origem e a definirá automaticamente.

Então, existe alguma maneira de encontrar o endereço de origem usando c ++?

    
por sk110 02.11.2016 / 10:18

1 resposta

1

Depois de conectar o soquete, você pode chamar getsockname para descobrir o endereço IP local.

    
por 02.11.2016 / 10:27