Bei dieser Software handelt es sich um ein in der Sprache C geschriebenes Chat-Tool, das ausgeführt werden kann. Führen Sie zuerst den Server und dann den Client aus und geben Sie die Host-IP-Adresse ein des Computers) können Sie mehrere Clients zum Testen des Chats ausführen.
NAT (Network Address Translators): Network Address Translation wurde entwickelt, als IP-Adressen immer knapper wurden. Sein Hauptzweck besteht darin, die Wiederverwendung von Adressen zu ermöglichen. NAT ist in zwei Kategorien unterteilt: Basis-NAT und NAPT (Network Address/Port Translator). Ursprünglich war NAT ein Funktionsmodul, das auf dem Router ausgeführt wurde.
Der erste Vorschlag war Basis-NAT, das auf der Tatsache basierte, dass nur wenige Knoten in einem privaten Netzwerk (Domäne) mit dem externen Netzwerk verbunden werden müssen (haha, das wurde Mitte der 1990er Jahre vorgeschlagen). Dann benötigen tatsächlich nur wenige Knoten in diesem Subnetz weltweit eindeutige IP-Adressen und die IP-Adressen anderer Knoten sollten wiederverwendbar sein. Daher ist die von Basic NAT implementierte Funktion sehr einfach, da ein reserviertes IP-Subnetzsegment innerhalb des Subnetzes verwendet wird und diese IPs für die Außenwelt nicht sichtbar sind. Nur wenige IP-Adressen innerhalb eines Subnetzes können wirklich weltweit eindeutigen IP-Adressen entsprechen. Wenn diese Knoten auf das externe Netzwerk zugreifen müssen, ist Basic NAT dafür verantwortlich, die IP des Subnetzes dieses Knotens in eine weltweit eindeutige IP umzuwandeln und diese dann zu versenden. (Basic NAT ändert die ursprüngliche IP-Adresse im IP-Paket, jedoch nicht den Port im IP-Paket.) Informationen zu grundlegendem NAT finden Sie in RFC 1631
Eine andere Art von NAT heißt NAPT. Aus dem Namen können wir auch ersehen, dass NAPT nicht nur die IP-Adresse des IP-Datagramms ändert, das dieses NAT-Gerät durchläuft, sondern auch den TCP/UDP-Port des IP-Datagramms. Wir sehen vielleicht nicht viele grundlegende NAT-Geräte (haha, ich habe sie nicht gesehen), aber NAPT ist der eigentliche Protagonist unserer Diskussion.