1 votes

Comment trouver l'adresse IP source ?

Comment trouver l'adresse IP par défaut si je suis connecté à plusieurs réseaux ? J'ai trouvé un lien

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

Mais dans "Sending network layer PDUs", il est écrit que

PacketSender sender;

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

Notez qu'aucune adresse source n'a été spécifiée dans le constructeur de l'IP. Cependant, lors de l'envoi de PDUs de la couche réseau, si l'adresse source est 0.0.0.0, le PDU effectuera une recherche dans la table de routage pour savoir quelle devrait être l'adresse source et la définira automatiquement.

Existe-t-il un moyen de trouver l'adresse de la source en C++ ?

1voto

David Schwartz Points 31009

Une fois le socket connecté, vous pouvez appeler getsockname pour connaître l'adresse IP locale.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X