Localhost — это имя, которым ваш компьютер называет сам себя. Оно преобразуется в петлевой адрес (loopback) 127.0.0.1 в IPv4 и ::1 в IPv6. Трафик, отправленный на него, никогда не покидает устройство: он сразу возвращается обратно на ваш компьютер.
Как работает петлевой адрес
Весь диапазон 127.0.0.0/8 (более 16 миллионов адресов) зарезервирован под loopback, хотя почти все используют 127.0.0.1. В операционной системе есть виртуальный сетевой интерфейс (lo в Linux, lo0 в macOS), который отвечает на эти адреса, не задействуя сетевую карту или роутер.
Имя localhost сопоставлено с адресом в файле hosts:
- Windows:
C:\Windows\System32\drivers\etc\hosts - macOS и Linux:
/etc/hosts
Для чего используется localhost
- Веб-разработка. Разработчики запускают сайт на своём компьютере и открывают
http://localhost:3000илиhttp://127.0.0.1:8080, прежде чем опубликовать его. Число после двоеточия — это порт. - Тестирование сетевых программ без подключения к сети.
- Локальные службы: базы данных, веб-интерфейсы принтеров и некоторые приложения слушают только localhost, чтобы к ним нельзя было подключиться с других устройств.
- Блокировка сайтов: если в файле hosts направить домен на
127.0.0.1, компьютер не сможет до него достучаться.
Localhost и другие ваши адреса
| Адрес | Что это | Кто может к нему подключиться |
|---|---|---|
127.0.0.1 / ::1 |
Ваш собственный компьютер | Только программы на этом же компьютере |
192.168.x.x, 10.x.x.x |
Ваш частный IP | Устройства в вашей домашней сети |
| Публичный IP | Ваше подключение в интернете | Интернет, через ваш роутер |
Частые ошибки
- «Не удаётся получить доступ к сайту, localhost отклонил подключение»: на этом порту не работает ни одна программа. Запустите сервер разработки или проверьте номер порта.
- Работает на localhost, но не с другого устройства: служба привязана к
127.0.0.1. Привяжите её к0.0.0.0(все интерфейсы) и разрешите порт в брандмауэре. - localhost преобразуется в
::1, а приложение слушает только IPv4: явно используйте127.0.0.1.
Опасен ли 127.0.0.1?
Нет. Никто за пределами вашего компьютера не может к нему подключиться. Если кто-то предлагает «взломать 127.0.0.1», это шутка: адрес указывает на его собственную машину.
127.0.0.1:8080, localhost:3000 и другие порты
Число после двоеточия — это порт: он сообщает компьютеру, какая программа на 127.0.0.1 должна ответить. http://127.0.0.1:8080 и http://localhost:8080 означают одно и то же.
| Порт | Обычно используют |
|---|---|
3000 |
Node.js, React, Next.js, Ruby on Rails |
5173 |
Vite |
4200 |
Angular |
5000 |
Flask, .NET |
8000 |
Django, python -m http.server |
8080 |
Tomcat, Jenkins и другие альтернативные веб-серверы |
Если http://127.0.0.1:8080 не открывается, значит, на этом порту ничего не запущено: сначала запустите программу и посмотрите вывод в её терминале — там указаны настоящие адрес и порт. Страница, открытая на 127.0.0.1, работает только на этом же компьютере; другие люди не смогут её открыть.
Часто задаваемые вопросы
Что такое 0.0.0.0?
Для сервера это означает «слушать на всех интерфейсах». Как адрес назначения он недействителен и обычно ведёт себя как localhost.
Можно ли использовать 127.0.0.2?
Да. В большинстве систем любой адрес из 127.0.0.0/8 замыкается на сам компьютер, что удобно для запуска нескольких локальных служб на одном и том же порту.
Почему поиск по IP пишет «loopback»?
Потому что 127.0.0.1 — не публичный адрес, и у него нет местоположения. Наш поиск по IP помечает все специальные адреса.