Ich erhalte unterschiedliche Ergebnisse für meine IP, wenn ich bei Google "Was ist meine IP" eingebe und wenn ich das Terminal von macOS eintippeifconfig |grep inet
Warum unterscheiden sich diese Ergebnisse unter macOS Version 10.13.2 High Sierra?
Sofern Ihr Computer nicht direkt über das Modem mit Ihrem ISP verbunden ist, wird die IP-Adresse Ihres Computers tatsächlich von Ihrem Router zugewiesen (entweder vom ISP oder von Ihnen selbst bereitgestellt). Die IP-Adresse, die Sie sehen, wenn Sie auf eine whatsmyip-Website gehen, ist die öffentliche IP-Adresse, die der ISP Ihrem Router zugewiesen hat. Dies ist die einzige IP-Adresse, mit der Geräte im Internet kommunizieren können, wenn sie versuchen, mit einem Gerät in Ihrem Netzwerk zu kommunizieren. Mithilfe einer Technik namens Network Address Translation ermöglicht Ihr Router mehreren Geräten (z. B. Ihrem Laptop, Ihrem Telefon und Ihrer PlayStation), diese einzelne öffentlich zugängliche IP-Adresse von Ihrem ISP für alle Geräte freizugeben.
Wahrscheinlich haben Ihre mit Ihrem internen Netzwerk verbundenen Geräte IP-Adressen wie 192.168.XXX.XXX oder 172.16.XXX.XXX - 172.31.XXX.XXX oder 10.XXX.XXX.XXX. Dies sind private IP-Adressen , die für interne Netzwerke reserviert sind und im breiteren Internet nicht verwendet werden können.
Diejenige, die Sie von Google erhalten, ist Ihre externe Adresse – Ihre öffentliche Adresse, die tatsächlich von Ihrem ISP der WAN-Verbindung (extern) Ihres Routers zugewiesen wird.
Der von ifconfig
ist Ihre interne, private Adresse - die von der (internen) LAN-Schnittstelle Ihres Routers zugewiesen wird.
Sie können das Caching-Dienstprogramm verwenden, um Ihre externe, öffentliche IP-Adresse zu finden:
AssetCacheLocatorUtil 2>&1 | awk '/This.*public/{sub(/\.$/, ""); print $NF}'
Ihr Router verwendet eine als NAT (Network Address Translation) bekannte Struktur, sodass für Sie bestimmte Pakete an den richtigen Computer gesendet werden, ohne Ihre interne Adresse nach außen preiszugeben.
Wikipedia-Link zu Network Address Translation - was Sie ehrlich gesagt nicht wissen und verstehen müssen;)
Ich mochte die Methode mit AssetCacheLocatorUtil, also habe ich sie ein wenig verbessert, indem ich nur die IP aus der Zeichenfolge extrahiert habe:
AssetCacheLocatorUtil 2>&1 | grep public | grep This | awk '{match($0,/[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+/); ip = substr($0,RSTART,RLENGTH); print ip}'
Benutzer3439894
AssetCacheLocatorUtil
grep
awk
AssetCacheLocatorUtil
awk
AssetCacheLocatorUtil 2>&1 | awk '/This.*public/{sub(/\.$/, ""); print $NF}'