Вопрос или проблема
Вопрос перенесен с StackOverflow:
Работаю на pfSense 2.4.4 (первый раз столкнулся с проблемой в 2.0.3), используя DNS Forwarder или DNS Resolver для Split-DNS с несколькими сетями LAN. LAN1 — это 10.10.10.0/24, а LAN2 — 192.168.69.0/24. Роутер pfSense имеет IP .1 на обоих интерфейсах, а DNS Forwarder/Resolver настроен только для LAN2 и localhost.
Когда роутер запрашивает DNS для своего собственного IP-адреса (pfsense.router.home), возвращается 10.10.10.1 вместо 192.168.69.1.
Как мне заставить его возвращать IP-адрес из LAN2?
Прошло 10 лет с тех пор, как я впервые столкнулся с этой проблемой, но все еще очень трудно найти решение в Google. Проблема описана здесь, и вот мои решения.
В 2.0.3 с помощью DNS Forwarder я решил эту проблему, буквально изменив порядок интерфейсов, так что IP первого LAN-интерфейса был тем, который я хотел разрешить для имени хоста pfSense (LAN2 в моем примере).
В 2.4.4, используя DNS Resolver, это можно сделать следующим образом
-
Отключите автоматически добавленные записи хостов
Services/DNS Resolver/Advanced Settings/Disable Auto-added Host Entries
-
Вручную добавьте переопределение имени хоста для роутера
Services/DNS Resolver/General Settings/Host Overrides
Я знаю, что это старое, но я решил разместить это здесь для других, кто ищет ответ.
-
Включите строгую привязку интерфейса (я не уверен, нужно ли это)
-
В пользовательских опциях добавьте что-то вроде:
localise-queries
host-record=router-hostname.local,192.168.15.1
host-record=router-hostname.local,192.168.14.1
Если имя хоста разрешается в той же подсети, что и переопределенный IP, то оно будет разрешаться только на этот адрес.
Правка: Это не работает с переопределениями хоста, используя пользовательский интерфейс. Их необходимо добавлять в поле пользовательских опций, как указано выше.
Ответ или решение
Ошибка IP-адреса для имени хоста pfSense в маршрутизаторе с несколькими LAN при использовании DNS Forwarder/Resolver
При настройке pfSense, версии 2.4.4 и выше, на маршрутизаторе с несколькими интерфейсами LAN (например, LAN1 с подсетью 10.10.10.0/24 и LAN2 с подсетью 192.168.69.0/24) может возникнуть интересная проблема с разрешением имени хоста. В частности, при запросе к имени хоста pfSense (например, pfsense.router.home) может возвращаться неправильный IP-адрес — 10.10.10.1 вместо ожидаемого 192.168.69.1. В данной статье рассмотрим, как правильно настроить DNS Forwarder или DNS Resolver для избежания этой проблемы.
Понимание проблемы
В многоподсетевом окружении, когда pfSense выступает в роли маршрутизатора, может возникнуть конфликт в разрешении имени хоста, поскольку маршрутизатор имеет два IP-адреса на различных интерфейсах. По умолчанию pfSense может возвращать IP-адрес, который чаще всего встречается или который находится в первой позиции в таблице маршрутизации, что не всегда соответствует вашим требованиям.
Решения проблемы
В зависимости от версии pfSense, доступные решения могут различаться. Ниже приведены рекомендации для версии 2.4.4 и выше.
-
Отключение автоматически добавляемых записей хоста:
- Перейдите в раздел
Services/DNS Resolver/Advanced Settings
. - Установите флажок
Disable Auto-added Host Entries
. Это предотвратит автоматическое добавление записей для интерфейсов.
- Перейдите в раздел
-
Создание ручного переопределения имени хоста:
- Перейдите в
Services/DNS Resolver/General Settings
. - Найдите раздел
Host Overrides
и добавьте новое переопределение для имени хоста вашего маршрутизатора, указывая правильный IP-адрес для LAN2 (192.168.69.1).
- Перейдите в
-
Настройка дополнительных параметров для более строгого разрешения:
- Вы можете также включить строгую привязку интерфейса, однако, это может не быть критическим шагом.
- В разделе
Custom Options
, добавьте следующие строки:localise-queries host-record=pfsense.router.home,192.168.69.1
Это позволит системе нормально обрабатывать запросы на разрешение в рамках актуальной подсети.
Заключение
Если вы столкнулись с проблемой неправильного IP-адреса при разрешении имени хоста в pfSense, применение нескольких настроек DNS Forwarder или Resolver, как описано выше, поможет исправить ситуацию. Управляя записями хоста и отключая автоматические добавления, вы получите необходимую гибкость при конфигурировании сетевых маршрутов и необходимых настроек DNS. Оставайтесь в курсе обновлений pfSense, так как разработчики постоянно работают над улучшением функциональности и исправлением бродячих ошибок.