Итак, у нас есть рабочий веб-сайт, которым никто в рабочей локальной сети не может пользоваться. Наши клиенты могут им пользоваться. Я могу использовать его, если мой телефон работает в сети LTE. Я не могу использовать его по Wi-Fi, через Ethernet-соединение на работе или на DNS-сервере. Не работает JavaScript, если это поможет.
в качестве редактирования: это наш собственный веб-сайт.
Без значительно большего количества информации очень сложно сделать точный вывод о том, почему это могло произойти. Одна проблема, которую я часто вижу в сетях малого и среднего бизнеса, имеет очень похожие симптомы; вы можете получить доступ к внутренним службам из внешнего расположения, но не можете получить к ним доступ изнутри. Это отличается от вашего сценария, поскольку вы четко указали, что службы размещаются на внешнем хостинге, однако может существовать компонент, размещенный на внутреннем сервере, который вы не рассматривали.
Подводя итог тому, что происходит: клиент делает запрос к доменному имени, которое преобразуется во внешний IP-адрес вашей сети. Затем клиентский запрос достигает вашего внешнего адреса, ваш маршрутизатор переводит этот запрос, используя ваши правила NAT / PAT, определяет «Вы хотите поговорить с этим сервером» и пересылает запрос. Сервер отвечает, и ваш маршрутизатор пересылает ответ обратно клиенту.
Когда вы обращаетесь к этому же имени от внутреннего клиента, оно по-прежнему преобразуется во внешний IP-адрес вашей сети, однако, когда вы делаете запрос, ваш маршрутизатор говорит: «Эй, вы уже ВНУТРИ сети, мне не нужно ничего делать. работают », потому что маршрутизатор обеспечивает связь« между »сетями.
Большинство дешевых маршрутизаторов реализуют функцию под названием «Обратный NAT», чтобы справиться с этим, и это не то, что вы обычно можете контролировать, поэтому это редко влияет на малый бизнес и энтузиастов. В более крупных организациях обычно имеется надлежащая инфраструктура DNS и маршрутизации для обработки таких сценариев, а их архитектура обычно продумана. К сожалению, большинство компаний среднего бизнеса находятся в подвешенном состоянии, когда им требуется гибкость оборудования более высокого класса, но они не организуют и не настраивают свою установку должным образом.
Во-первых, вам нужно определить, происходит ли это.
Теперь просмотрите список сделанных сетевых запросов и запишите все доменные имена из этих запросов. Запросите их IP-адреса с помощью nslookup. Если один из них является внешним адресом вашей частной сети, вероятно, это будет вашей проблемой. Если это так, просто измените свой внутренний DNS-сервер, чтобы разрешить этот адрес тому же узлу, на который ваш маршрутизатор пересылает этот трафик.
Если вы непреклонны в том, что ваш веб-сайт полностью автономен на внешнем хосте, убедитесь, что настройки безопасности ваших браузеров не влияют только на javascript в вашей организации. Самый простой способ - подключить тот же компьютер, который вы используете для внутренней работы, к Интернету напрямую через телефон или другое устройство и убедиться, что все работает должным образом.
Использование командной строки nslookup: nslookup hostname.com 8.8.8.8
, где hostname.com - это имя, которое вы хотите разрешить, а 8.8.8.8 - это обычно используемый общедоступный DNS-сервер. Если DNS-сервер не указан, он будет использовать ваши компьютеры по умолчанию.