Назад | Перейти на главную страницу

клиент переключается между внутренним и внешним IP-адресами?

У меня есть то, что кажется не особо сложной домашней сетью, учитывая все обстоятельства: линия DSL подключается к модему / маршрутизатору, который подключается к коммутатору, который поддерживает несколько машин. Мои машины живут в адресном пространстве 192.168.0.x; однако я использую несколько общедоступных серверов в сети, поэтому у меня есть блок из 8 (на самом деле 5) статических IP-адресов, которые маршрутизатор сопоставляет серверам. Не-серверы получают адреса 192.168.0.x через NAT; некоторые машины имеют статические адреса, а некоторые получают адреса от DHCP. Локально я запускаю DNS-сервер (названный) для сопоставления доменных имен и адресного пространства 192.168. Немного неряшливо, но в принципе все работает.

За исключением: один из моих локальных клиентов, не являющихся серверами, иногда переключается со своего внутреннего адреса на внешний. То есть, если я проверяю журналы веб-сайта, на котором я работаю внутри, обращения, поступающие от этого клиента, иногда отображаются с внутренним адресом 192.168, а иногда с внешним адресом (216.103 ...). Он будет вертеться вперед и назад без видимой причины, и я ничего не сделаю. Это может быть проблемой с точки зрения того, как клиенты взаимодействуют с тем, как я настроил некоторые из клиентских систем SSH (например, разрешая доступ из внутренней сети, но не из внешней сети), но это также просто кажется неправильным. Признаюсь, здесь я катаюсь на самом краю своей сетевой компетенции, но я не могу понять, что происходит.

Если это помогает, то данный клиент работает под управлением Mac OS X / 10.6; его адрес назначается статически, не является одним из пяти адресов, доступных извне, и получает свой DNS от (первого) внутреннего DNS-сервера и (во-вторых) DNS-серверов моего интернет-провайдера. Я не могу поклясться, что ни один из других клиентов NAT также не показывает эту проблему; тот, с которым я имею дело, - это моя повседневная машина, так что именно здесь я сталкиваюсь с ней. Есть ли у кого-нибудь совет? Это сводит меня с ума...

Проблема должна заключаться в конфигурации вашего сервера имен. Настройте все свои внутренние машины для поиска DNS только против вашего сервера, работающего под именем, и настройте частную зону DNS как подробно в этой статье. Для конкретного случая статически настроенной системы это означает /etc/resolv.conf должен иметь один search линия (для вашей частной зоны DNS) и одна nameserver строка (указывающая на адрес вашего названного сервера).

Затем, после этой первой части статьи, также сконфигурируйте свой сервер имен как сервер кэширования. Вы должны указать его либо на DNS-серверы, предоставленные вашим интернет-провайдером, либо на внешние серверы, например, указывая либо на ваших DNS-провайдеров, либо на альтернативные DNS-серверы, такие как Google.

Вы можете изменить конфигурацию динамически назначаемых хостов, отредактировав настройки DHCP-сервера на вашем маршрутизаторе.

Я думаю, что DNS-серверы не имеют приоритета, ЕСЛИ у вас есть как ваш внутренний DNS-сервер, так и DNS-сервер интернет-провайдера, он будет запрашивать один из них случайным образом.

Попробуйте использовать только свой внутренний DNS-сервер и попросите его пересылать любые запросы, на которые он не знает ответа, на DNS-сервер вашего интернет-провайдера.