Яка різниця між IP-адресою машини та localhost


12

Сумніви виникли в моєму іншому запитанні, де, якщо я дам localhost на свій шлях, це працює. Але це не працює, якщо я даю своїй системі ip.

127.0.0.1 відображається в localhost в моєму / etc / hosts. Чи потрібно мені зіставити свій ip на localhost? Не змінюється?

Хіба вони не однакові?

Відповіді:


14

Деякі служби налаштовані на прослуховування лише IP-адреси localhost.

Прикладом може бути база даних MySQL - ви хочете, щоб ваша програма PHP, що працює на тому ж сервері, підключалася до неї, але не хочете, щоб підключалися зовнішні служби або навіть хакери ззовні. 127.0.0.1Налаштувавши MySQL приймати лише адреси localhost ( наприклад), а не реальну IP-адресу вашого сервера ( 10.x.x.xнаприклад), ви зменшуєте ймовірність злому.

Отже, щоб відповісти на ваше запитання - так, вони різні.

localhostнадається ip-адреса в 127.0.0.0мережі та надається пристрою віртуальної мережі lo. Цей пристрій присутній у всіх системах, незалежно від того, чи є у них встановлений фізичний мережевий пристрій (наприклад, WiFi або Ethernet). Система, яка не підключена до жодної мережі, матиме цей пристрій зворотного зв'язку, а отже, і 127.0.0.0адресу. Ім'я localhost- це просто ім'я, яке відповідає цій IP-адресі та налаштовано в /etc/hosts.

Ваша реальна IP-адреса (наприклад, 10.xxx) призначена мережевому пристрою. Зазвичай це фізичний мережевий пристрій (WiFi або Ethernet), хоча розширені налаштування tunабо tapпристрої також можуть використовувати їх. Знову ж, роздільну здатність імені (наприклад, www.example.orgдо 10.0.1.1) може бути налаштовано /etc/hostsабо встановлено для використання DNS.


4

127.0.0.1 є localhost , це адреса поточної машини, доступ через інтерфейс зворотнього петлі (не через мережевий адаптер - це працює , навіть якщо немає ніяких мережевих чіпів в системі).

Ip, який ви отримуєте від маршрутизатора, - це інша історія: це адреса, яка дозволяє іншому комп'ютеру в мережі знайти вас. Ну, ви можете використовувати цей ip на одній машині, але він працює інакше, як і раніше: він виходить на маршрутизатор і знову (я тут спрощую, але це загальна ідея).

А якщо ви підключені до Інтернету, ви також отримаєте ще один ip від свого провайдера - ip, за допомогою якого вас знайде інший комп'ютер у всьому світі. Однак ці двоє принаймні посилаються на той самий мережевий адаптер ( eth0або бездротову карту чи будь-що інше). localhostінакший.

Операційна система, сервери і так далі ... можуть поводитися по-різному при зверненні з них localhost. Зазвичай у вас немає брандмауера, і багато місцевих служб мають localhostінтерфейс, призначений просто для зв'язку з додатком. Багато разів вам потрібно буде протестувати свій веб-сервер, попередньо підключивши його, щоб слухати його localhost, щоб ви могли перевірити, чи працює він, але інші люди не можуть. Потім ви можете перенастроїтись на прослуховування своєї зовнішньої ip-адреси та почати обслуговувати веб-сайт (і ще раз перевірити, чи все ще працює).


Дякую за довге пояснення. Виникло ще одне сумнів: якщо я скажу, що я обслуговую localhost, він не перейде на маршрутизатор. Але якщо я вкажу ip, він буде перенаправлений маршрутизатором. Тому я повинен мати підключення до Інтернету у своєму другому випадку. Не з місцевим господарем. Будь ласка, повідомте мене
Гіббс

Вам потрібне підключення до роутера, інакше ви отримаєте network is unreachableабо щось подібне. Хитрість полягає в тому, що (принаймні, з dhcp) саме маршрутизатор надає вам в першу чергу LAN ip. Можливо, що це змінюється в деяких випадках, якщо маршрут зберігається, але, по суті, для LAN ip вам потрібна локальна мережа, а для зовнішнього ip потрібне підключення до провайдера.
Оріон

3

Коли ви отримаєте доступ localhost, ваш /etc/hostsфайл скаже вашому комп'ютеру більше не шукати і перенаправить вас на власний комп'ютер. Коли ви отримаєте доступ до локальної адреси IP, ваш комп'ютер попросить маршрутизатор отримати дані, і ваш маршрутизатор повернеться до вашого комп'ютера.


3
@serenesat - Ні. Коли ви отримаєте доступ до своєї "справжньої" IP-адреси, ви не заїдете далеко до маршрутизатора - ви навіть не покинете цю машину.
Спробуєте пінгнути

Ця відповідь явно неправильна.
Rui F Ribeiro
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.