FreeBSD не работает как DNS сервер

Простые/общие вопросы по UNIX системам. Спросите здесь, если вы новичок

Модераторы: vadim64, terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
Reken
лейтенант
Сообщения: 605
Зарегистрирован: 2014-06-30 11:23:24
Откуда: Республика Карелия

FreeBSD не работает как DNS сервер

Непрочитанное сообщение Reken » 2015-12-10 9:44:06

Здравствуйте, помогите пожалуйста разобраться...

есть тестовый шлюз на FreeBSD 9.3 над ним есть вышестоящий прокси-сервер...

Задача такая, что бы FreeBSD служил DNS сервером и шлюзом для компов которые к нему "приуеплены" ко второй сетевухе.

Параметры FreeBSD:

etc/rc.conf

Код: Выделить всё

hostname="name.local"
keymap="ru.koi8-r.kbd"

gateway_enable="YES"
ifconfig_bfe0="inet 192.168.99.88 netmask 255.255.255.0" # внешняя сетевая карта
ifconfig_rl0="inet 192.168.0.4 netmask 255.255.255.0"   # внутрення сетевая карта
defaultrouter="192.168.99.4"                            # Вышестоящий шлюз

firewall_nat_enable="YES"
firewall_enable="YES"
firewall_script="/etc/rc.firewall.my"
squid_enable="YES"

sshd_enable="YES"
ntpd_enable="YES"
named_enable="YES"
/etc/resolv.conf

Код: Выделить всё

nameserver 192.168.99.5   # Вышестоящий DNS сервер 
nameserver 127.0.0.1      # Стандартный DNS
nameserver 8.8.8.8        # DNS от google
/etc/namedb/named.conf
Внесены следующие изменения:

Код: Выделить всё

listen-on { 127.0.0.1; 192.168.0.4; };
forwarders {
127.0.0.1; 192.168.99.5; 8.8.8.8;
};
/etc/rc.firewall.my

Код: Выделить всё

FwCMD="/sbin/ipfw -q"
LanOut="bfe0"

${FwCMD} -f -q flush

${FwCMD} nat 1 config log if ${LanOut} same_ports
${FwCMD} add nat 1 ip from any to any
Проблема в том, что с FreeBSD не проходит ping до компа, который прицеплен к внутренней сетевухе. Пинг до вышестоящего шлюза проходит.
Комп(192.168.0.6) который прицеплен к внутренней карте FreeBSD, может пропинговать FreeBSD, с таким результатом:

Код: Выделить всё

Ответ от 192.168.0.6: Заданный узел не доступен
Ответ от 192.168.0.6: Заданный узел не доступен
Ответ от 192.168.0.6: Заданный узел не доступен
Ответ от 192.168.0.6: Заданный узел не доступен
Пакетов отправлено =4, получено = 4, потеряно = 0
При попытке пропинговать с компа ya.ru, комп не преобразовывает ya.ru в ip, и пишет что не удалось обнаружить узел ya.ru. Следовательно FreeBSD не отрабатывает как DNS. В настройках компа в качестве DNS сервера и шлюза указан FreeBSD (192.168.0.4). Ну и интернет на компе не работает, пишет что сетевой кабель не подключен, на иконке сетевой карты отображается "без доступа к сети"...

Отправлено спустя 25 минут 24 секунды:
Я кажется понял в чем дело...
Команда ifconfig показывает что есть две сетевые карты rl0 и bfe0. Но у внутренней сетевухи (rl0) нет параметра inet... Следовательно она работает некорректно

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

snorlov
подполковник
Сообщения: 3846
Зарегистрирован: 2008-09-04 11:51:25
Откуда: Санкт-Петербург

FreeBSD не работает как DNS сервер

Непрочитанное сообщение snorlov » 2015-12-10 10:21:36

Ну так приведите

Код: Выделить всё

ifconfig -a

Аватара пользователя
Reken
лейтенант
Сообщения: 605
Зарегистрирован: 2014-06-30 11:23:24
Откуда: Республика Карелия

FreeBSD не работает как DNS сервер

Непрочитанное сообщение Reken » 2015-12-10 10:44:52

snorlov писал(а):Ну так приведите

Код: Выделить всё

ifconfig -a
rl0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=2008<VLAN_MTU,WOL_MAGIC>
ether 00:c0:26:21:2e:2f
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
media: Ethernet autoselect
status: active

bfe0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=80008<VLAN_MTU,LINKSTATE>
ether 00:1a:a0:2e:dd:e9
inet 192.168.99.88 netmask 0xffffff00 broadcast 192.168.99.255
inet6 fe80::21a:a0ff:fe2e:dde9%bfe0 prefixlen 64 scopeid 0x8
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active

plip0: flags=8810<POINTOPOINT,SIMPLEX,MULTICAST> metric 0 mtu 1500
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>

lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
options=600003<RXCSUM,TXCSUM,RXCSUM_IPV6,TXCSUM_IPV6>
inet6 ::1 prefixlen 128
inet6 fe80::1%lo. prefixlen 64 scopeid 0xa
inet 127.0.0.1 netmask 0xff000000
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>

ipfw0: flags=8801<UP,SIMPLEX,MULTICAST> metric 0 mtu 65536
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>

snorlov
подполковник
Сообщения: 3846
Зарегистрирован: 2008-09-04 11:51:25
Откуда: Санкт-Петербург

FreeBSD не работает как DNS сервер

Непрочитанное сообщение snorlov » 2015-12-10 10:48:36

Копайте rc.conf там явно что-то не подребное в строке ifconfig_rl0, может описка типа буквы о

Аватара пользователя
Reken
лейтенант
Сообщения: 605
Зарегистрирован: 2014-06-30 11:23:24
Откуда: Республика Карелия

FreeBSD не работает как DNS сервер

Непрочитанное сообщение Reken » 2015-12-10 11:03:36

snorlov писал(а):Копайте rc.conf там явно что-то не подребное в строке ifconfig_rl0, может описка типа буквы о
Спасибо за наводку...
Нужно ifconfig, а у меня было ifcongig
Внимательность рулит :good:

P.S. Всё заработало...

Аватара пользователя
Electronik
капитан
Сообщения: 1593
Зарегистрирован: 2008-11-15 17:32:56
Откуда: Минск
Контактная информация:

FreeBSD не работает как DNS сервер

Непрочитанное сообщение Electronik » 2015-12-10 11:31:10

Reken писал(а): nameserver 192.168.99.5 # Вышестоящий DNS сервер
nameserver 127.0.0.1 # Стандартный DNS
nameserver 8.8.8.8 # DNS от google


/etc/namedb/named.conf
Внесены следующие изменения:

Код: Выделить всё
listen-on { 127.0.0.1; 192.168.0.4; };
forwarders {
127.0.0.1; 192.168.99.5; 8.8.8.8;
};
так может в /etc/resolv.conf поднимите на верх 127.0.0.1 .....
а то смысл "Стандартный DNS", если первоначально сервер запрашивает всегда у вышестоящего?
Предскажем будущее hw по логам и дампу, снимем сглаз и порчу с рута, поможем придумать пароль(С)
Блог

guest
проходил мимо

FreeBSD не работает как DNS сервер

Непрочитанное сообщение guest » 2015-12-11 13:11:08

Electronik писал(а):
Reken писал(а): nameserver 192.168.99.5 # Вышестоящий DNS сервер
nameserver 127.0.0.1 # Стандартный DNS
nameserver 8.8.8.8 # DNS от google


/etc/namedb/named.conf
Внесены следующие изменения:

Код: Выделить всё
listen-on { 127.0.0.1; 192.168.0.4; };
forwarders {
127.0.0.1; 192.168.99.5; 8.8.8.8;
};
так может в /etc/resolv.conf поднимите на верх 127.0.0.1 .....
а то смысл "Стандартный DNS", если первоначально сервер запрашивает всегда у вышестоящего?
если бы только это:
nameserver 192.168.99.5 # Вышестоящий DNS сервер
nameserver 127.0.0.1 # Стандартный DNS
nameserver 8.8.8.8 # DNS от google
первым должен стоять свой: мастер или кеширующий, затем можно один или два
дополнительных на случай проблем с первым
/etc/namedb/named.conf
Внесены следующие изменения:

Код: Выделить всё
listen-on { 127.0.0.1; 192.168.0.4; };
forwarders {
127.0.0.1; 192.168.99.5; 8.8.8.8;
};
Пытайтесь обдумывать то что делаете, ваши действия (без учета ошибки с resolv.conf):
"вешаем свой DNS сервер на 127.0.0.1 - на lo0, это только для самого себя"
"вешаем свой DNS сервер на 192.168.0.4 - для своих клиентов локальной сети"
а далее, форвардим запросы снова на себя -> forwarders 127.0.0.1 и загоням резолвер
в цикл. Форвардят на другие сервера.

Неужели лень прочитать книгу про DNS?

resolv.conf - используют для dns резолвинга самой локальной машины
dns сервер в локалке делают - master, для резолвинга собственных и локальных зон,
или кеширующий, чтобы уменьшить трафик и кол-во обращений к внешним серверам.