
Этот вопрос, вероятно, является дубликатомНевозможно подключиться к локальному серверу с других устройств (подключенных через Wi-Fi), когда сервер подключен через Wi-Fi, на который так и не был получен приемлемый ответ.
У меня есть сервер Linux, в настоящее время подключенный к сети через Wi-Fi. Он работает и доступен (например, через ssh) из-за пределов моей домашней сети через динамическую службу DNS и NAT на основе маршрутизатора и переадресацию портов. Маршрутизатор — Linksys EA4500.
Локальные ПК, подключенные к маршрутизатору, могут успешно подключаться по ssh, хотя они должны использовать локальный IP (192.168.1.122, статический через резервирование DHCP на маршрутизаторе), поскольку маршрутизатор не будет направлять внутренний трафик на свой внешний IP. Достаточно справедливо, это нормально.
Локальные устройства, подключенные к той же сети Wi-Fi, что и сервер, не могут надежно подключиться. Я только что перезагрузил сервер, маршрутизатор И ПК, подключенный к Wi-Fi, и через несколько минут ПК смог успешно подключиться... но до перезагрузки соединения обрывались (отсутствовал маршрут к хосту), и это продолжалось несколько дней. Видя эту закономерность раньше, я почти уверен, что они снова начнут падать.
Я склоняюсь к мысли, что это как-то связано с обновлениями DHCP, но не знаю, как это исправить.
Вопросы комментаторов:
«Что означает «невозможно надежно подключиться»?»
Когда он перестает работать, попытки выглядят как сбои маршрутизации. Пинги истекают, большинство других протоколов сообщают «нет маршрута к хосту», журналы сервера не показывают попыток подключения.
«Имеет ли сервер интерфейсы Ethernet и WIFI?»
Больше нет; он работает по Wi-Fi, поскольку встроенный интерфейс Ethernet вышел из строя во время грозы, и ОС больше не распознает его.
«Пожалуйста, предоставьте вывод ifconfig и iptables».
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 31149 bytes 5871934 (5.5 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 31149 bytes 5871934 (5.5 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlp1s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.122 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::5627:1eff:fe1a:7535 prefixlen 64 scopeid 0x20<link>
ether 54:27:1e:1a:75:35 txqueuelen 1000 (Ethernet)
RX packets 2063063 bytes 379558678 (361.9 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 784726 bytes 119478321 (113.9 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
На данный момент опускаем iptables
, поскольку при сбое соединения попытка подключения не регистрируется (iptables не имеет возможности отреагировать на попытку).
«У вас есть один маршрутизатор, выполняющий также функции точки доступа, или у вас есть несколько маршрутизаторов, или отдельные маршрутизатор и точка доступа? Какие IP-адреса вы используете для различных устройств и как они назначаются? Хорошая схема со всеми устройствами и IP-адресами может оказаться полезной».
Подробнее об этом, когда я буду присутствовать физически. Но есть кабельный модем и отдельный маршрутизатор/WAP за ним. Маршрутизатор выполняет DHCP на 192.168.1.*. Переадресация портов с кабельного модема на маршрутизатор и на сервер. Кабельный модем не находится в чистом режиме моста (вместо этого он выполняет DHCP с маршрутизатором в качестве своего единственного клиента), потому что куча всего развалилась, когда я это пробовал (возможно, странность в требованиях к аутентификации провайдера), и я не боролся с этим, потому что это не было проблемой, но, возможно, теперь это уже не так.