Jaka jest różnica między 127.0.0.1 a moim przypisanym adresem IPv4?

11

Przeczytałem tutaj, że:

127.0.0.1to adres IP (IPv4) twojego komputera lokalnego, synonim localhost.

Po uruchomieniu polecenia ipconfigwidzę inny adres IP. Więc wkleiłem poniższe pytania:

C:\Users\Dhiwakar>ipconfig

Windows IP Configuration


Ethernet adapter Local Area Connection* 9:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . :

Ethernet adapter Local Area Connection:

   Connection-specific DNS Suffix  . :
   Link-local IPv6 Address . . . . . : fe80::6089:2937:e839:26ec%10
   IPv4 Address. . . . . . . . . . . : 192.168.1.36
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . : 192.168.1.1
  1. Jaki jest mój adres IPv4 mojego komputera lokalnego? Czy to 127.0.0.1(jak wspomniano w artykule), czy jest 192.168.1.36?

  2. Czy IPv4 służy do jednoznacznej identyfikacji mojego komputera / maszyny na świecie lub w mojej domenie, czy ogranicza tylko moją sieć LAN, tj. W obrębie zestawu komputerów, które korzystają z tej samej bramy?

Dhiwakar Ravikumar
źródło
2
127.0.0.1Jest to specjalny adres, który każdy komputer zdolny IPv4 można używać do rozmowy siebie . 192.168.1.36to adres, z którego będą rozmawiać inne komputery w twojej sieci LAN. Ponieważ ten adres należy do zakresu 192.168.xx, ma on znaczenie tylko w sieci LAN; serwer akceptujący połączenia z całego świata będzie miał adres z innego zakresu.
zwolnienie,
5
Twój pierwszy wiersz „Czytam tutaj, że:” wydaje się wskazywać, że masz na imię „Ja”. Więc masz na imię „Dhiwakar”, czy też „ja”? 127.0.0.1 nie jest adresem IP, jest taki sam jak „I”.
gnasher729,

Odpowiedzi:

28

Nie ma czegoś takiego jak „adres komputera lokalnego” . Adresy IP łączą się z interfejsami sieciowymi . Jeśli masz w komputerze 5 kart LAN / Wi-Fi (kart sieciowych), możesz mieć (co najmniej) 5 adresów IP dla tych interfejsów.

Tutaj widzisz adapter o nazwie „Połączenie lokalne” z adresem IP 192.168.1.36, a 127.0.0.1 to adres adaptera pętli zwrotnej w każdym komputerze.

Istnieje wiele rodzajów adresów IP. Rzeczy takie jak 10.x.x.xlub 192.168.x.xadresami prywatnymi, które służą do identyfikacji komputera w sieci lokalnej . Osoby z zewnątrz nie widzą, co znajduje się w sieci lokalnej, ponieważ zostały ukryte po NAT . Każda sieć lokalna połączy się z WAN za pośrednictwem routera i będzie mieć publiczny adres IP z interfejsem skierowanym do WAN routera. Jeśli Twój komputer jest podłączony bezpośrednio do publicznego Internetu (co jest bardzo mało prawdopodobne w sieci IPv4 ze względu na ograniczenie zakresu adresów i wysoką cenę statycznych adresów IP), będziesz mieć również adres IP WAN (publiczny).

phuclv
źródło
zaczynam rozumieć lepiej :) „Każda sieć lokalna połączy się z WAN przez router i będzie miała publiczny adres IP z interfejsem skierowanym do WAN routera”. Czy router jest również bramą, czy są to dwa różne podmioty? Adapter pętli zwrotnej może być również używany do testowania stosu TCP / IP, ale niewiele więcej, prawda?
Dhiwakar Ravikumar
tak. to brama.
phuclv
3
Możesz także mieć wiele adresów w interfejsie, FWIW.
cpast
9

Twój system może mieć wiele adresów IP i wiele adapterów, fizycznych lub wirtualnych.

Zwykle masz adapter sprzężenia zwrotnego (przypisany 127.0.0.1, chociaż tak naprawdę jest ich blok ) i jeden lub kilka innych.

W takim przypadku Pytanie 1: Tak Pytanie 2 Nie

Jest kilka rzeczy, które muszą komunikować się wewnętrznie z systemem - prostym przykładem byłoby użycie 127.0.0.1 (lub :: 1 w ipv6), aby uzyskać dostęp do strony internetowej działającej z tego samego systemu.

W typowej sieci domowej miałby się pojedynczy adres z routingiem zewnętrznym / bez adresu RFC 1918 ipv4, z NAT używanym do wysyłania pakietów do odpowiedniego hosta wewnętrznego, a adresy RFC 1918 przydzielane są każdemu hostowi wewnętrznemu. Twój adres 192.168.1.X jest unikalny dla twojego komputera w twojej sieci , ale nie globalnie. Użyłbyś tego, by dostać się do systemu z komputerów w twojej sieci LAN, ale nie z zewnątrz. Jeśli twój komputer ma wiele interfejsów, możesz powiedzieć „usługom”, aby nasłuchiwały określonych. W typowej domowej sieci LAN mógłbym użyć 192.168.1.1, aby skontaktować się z moim routerem, ale nie działałoby to gdzie indziej. Podobnie, mógłbym użyć 192.168.1.38 z 192.168.1.39, ale nie na zewnątrz

Jeśli komputer był jedynym urządzeniem, bezpośrednio podłączonym do modemu lub podobnego urządzenia (w przeciwieństwie do routera konsumenckiego) lub ma publiczny adres IP w ramach organizacji / dostawcy usług internetowych, który ma ich blok, i przypisuje je / trasuje będziesz mieć globalnie rutowalny adres IP. Mój ISP daje mi jeden adres ipv4 i blok adresów ipv6, z wieloma adresami ipv6 na interfejs.

Jeśli masz wiele interfejsów, możesz mieć połączenie prywatnych i publicznych adresów IP - zwykle robią to dostawcy VPS, dzięki czemu możesz uzyskać dostęp do innego VPS tego samego dostawcy bez korzystania z przydziału danych zewnętrznych.

Wszystkie są moim adresem IP z różnych perspektyw. Mój adres RFC 1918 jest ważny z wnętrza mojej sieci, mój zewnętrzny adres IP z przekierowaniem portu jest ważny zewnętrznie, a mój adres ipv6 jest ważny wszędzie tam, gdzie jest ipv6.

Journeyman Geek
źródło
6

Pytanie 1:

  • Adres IPv4 komputera jest, jak ipconfigdonosi polecenia 192.168.1.36.
  • Jeśli chodzi o 127.0.0.1adres, jest to tak zwany adres „pętli zwrotnej” - jest to specjalny adres IP, na który możesz wysłać ruch, który po prostu wróci do ciebie.
  • Jak wspomniałeś, na typowym komputerze 127.0.0.1jest taki sam jak localhost. Jeśli otworzysz C:\Windows\System32\drivers\etc\hostsplik w Notatniku, zobaczysz, skąd pochodzi mapowanie. (I możesz to zmienić, jeśli chcesz, ale ogólnie nie jest to zalecane).
  • Do czego służy adres sprzężenia zwrotnego? Różne rzeczy. Na przykład, jeśli chcesz pracować na stronie, którą budujesz, ale z jakiegoś powodu twój komputer nie ma żadnych Ethernetowych ani bezprzewodowych kart sieciowych, nadal będziesz w stanie uzyskać dostęp do strony internetowej za pomocą przeglądarki, z którą chcesz się połączyć http://127.0.0.1/.

Pytanie 2:

  • 192.168.1.36Adres IPv4 nie jest wykorzystywany do jednoznacznej identyfikacji komputera na świecie. To jest twój adres IP LAN. Tylko komputery za kamerą routera mają bezpośredni dostęp do twojego adresu IP LAN.
  • Jeśli chcesz znaleźć adres, który Cię jednoznacznie identyfikuje, po prostu odwiedź http://www.whatismyip.com/ .
James
źródło
5

Aby uzyskać prostszą odpowiedź niż inne odpowiedzi z podręcznika, widzę:

127.0.0.1 tak naprawdę nie wysyła ruchu do routera, a następnie z powrotem do komputera. Nie należy mylić terminu „pętla zwrotna”. Jedyne, co robi adres sprzężenia zwrotnego, to sprawdzanie stosu TCP / IP. Jest to de facto etap rozwiązywania problemów w celu sprawdzenia, czy stos TCP / IP jest poprawnie skonfigurowany i czy karta sieciowa działa prawidłowo.

Twój adres IP jest faktycznie prezentowany przez router innym komputerom / serwerom.

Czy wiesz, że możesz pingować 127.0.0.1 bez połączenia z siecią? Prawdziwa historia.

Jordan Granados
źródło
1
Dobra prosta odpowiedź. Aby dodać nieco więcej: użyj localhostlub, 127.0.0.1gdy chcesz użyć stosu sieciowego komputera, ale bez wychodzenia z sieci. Używając jednego localhostlub 127.0.0.1drugiego oznacza, że ​​chcesz, aby jedno oprogramowanie komunikowało się z innym oprogramowaniem na tym samym komputerze . Na przykład aplikacja klienta bazy danych komunikująca się z serwerem bazy danych działającym na tym samym komputerze. Lub przeglądarka internetowa rozmawiająca z serwerem internetowym na tym samym komputerze. Korzystając z tej nazwy lub numeru, możesz mieć pewność, że łączysz się z tym samym komputerem, a nie z jakimś innym urządzeniem.
Basil Bourque,
4
  1. Jaki jest mój adres IPv4 mojego komputera lokalnego? Czy to 127.0.0.1(jak wspomniano w artykule), czy jest 192.168.1.36?

Adresy 127.0.0.1i 192.168.1.36są zarówno do użytku lokalnego komputera, jak i 192.168.1.36do potencjalnego wykorzystania sieci LAN. Czytaj.

  1. Czy IPv4 służy do jednoznacznej identyfikacji mojego komputera / maszyny na świecie lub w mojej domenie, czy ogranicza tylko moją sieć LAN, tj. W obrębie zestawu komputerów, które korzystają z tej samej bramy?

Jedyny adres, który byłby użyty dla twojej większej sieci LAN to 192.168.1.36. 127.0.0.1Adresu i nazwy hosta localhostpodłączone do niego, jest uznawany za lokalny adres zwrotny używany głównie przez system tylko dla diagnostyki i testowania sieci lokalnej. Oznacza to, że jedynym sposobem na uzyskanie dostępu do tego adresu jest zalogowanie się bezpośrednio na komputerze.

Co warte jest tego, każdy komputer na świecie jest przypisany 127.0.0.1/ localhostnie można połączyć się zdalnie z jednego komputera do drugiego, uzyskując dostęp do 127.0.0.1/ localhost. Tak więc dla przeciętnego użytkownika szanse, że kiedykolwiek będziesz musiał świadomie uzyskać dostęp 127.0.0.1/ localhostjest niewielkie.

To powiedziawszy, 192.168.1.36adres to adres, który większość innych komputerów w sieci LAN użyłaby do identyfikacji i skontaktowania się z Tobą, jeśli Twój komputer jest skonfigurowany tak, aby zezwalać na usługi sieciowe. Miałoby to zastosowanie tylko wtedy, gdy włączysz serwerowe połączenia z komputerem 192.168.1.36. A to oznacza, że ​​jeśli byłeś zalogowany, 192.168.1.36a następnie chciałeś „połączyć się ze sobą” w celu przetestowania, tak, możesz to zrobić. Ale tradycyjnie lokalne testy systemu używają 127.0.0.1/ localhostadapter.

Jeśli chodzi o resztę świata poza twoją siecią LAN - znaną również jako połączenie WAN - 192.168.1.36nie można połączyć się zdalnie poza twoją siecią LAN, chyba że wyraźnie skonfigurujesz swój router, aby to robił przez przekierowanie portów lub coś podobnego. Ale ta koncepcja jest poza zakresem tego pytania.

JakeGould
źródło