Не удается получить доступ к локальному серверу с IP-адресом, в то время как локальный хост и 127.0.0.1 могут
Я пытаюсь разрешить другим компьютерам доступ к моему локальному серверу, но я попробовал себя локально, что не могу получить доступ к нему локально, даже сам.
Несколько вещей, которые вы должны знать:
Моя цель
Посетите мой сервер через http://172.26.141.106:5201/
Что я могу сделать сейчас
Я могу получить доступ к своему серверу двумя способами:
Конфигурация IP
Результат ifconfig | grep inet
inet addr:172.17.0.1 Bcast:0.0.0.0 Mask:255.255.0.0
inet addr:172.26.141.106 Bcast:172.26.141.255 Mask:255.255.255.0
inet6 addr: fe80::f767:cd56:9641:d3a9/64 Scope:Link
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
Хосты
Выход из cat /etc/hosts
:
127.0.0.1 localhost.localdomain localhost
127.0.0.1 hearen.pc
127.0.0.1 hearen-OptiPlex-7050
127.0.0.1 staging
127.0.0.1 arthas
172.26.141.106 localhost hearen.pc
Брандмауэр
$ sudo ufw disable
Firewall stopped and disabled on system startup
$ sudo ufw status
Status: inactive
Есть ли способ, который я пропустил? Все, что я хочу, это разрешить другим доступ к моему серверу через http://172.26.141.106:5201/
Любая помощь будет оценена:)
Обновлено 2019-01-10
С помощью @Ed King я проверяю порты через sudo lsof -i -P -n | grep LISTEN | grep 5201
и только 127.0.0.1
был прослушан.
Проблема решена после того, как я настроил свой Angular сервер для прослушивания 0.0.0.0
,
1 ответ
Убедитесь, что ваш сервер прослушивает:
sudo lsof -n | grep TCP | grep LISTEN
Вы также можете проверить маршрут с помощью nc. Запустите nc на сервере, прослушивающем неиспользуемый порт, а затем подключитесь с другого компьютера - это проверит правильность iptables и маршрутов.
Я предполагаю, что вы слушаете только на локальном хосте.
Я исправил эту проблему следующими способами:
Я запускаю команду
sudo ufw status
И я обнаружил, что порта 80 (в моем случае) нет в списке.
Затем я запускаю команду
sudo ufw allow 80
Это устранило проблему.