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

Использование dnsmasq для обслуживания нескольких подсетей

Я новичок в использовании dnsmasq и хотел бы продолжать использовать его в своей лабораторной среде. Однако, будучи новичком, я не уверен, какие команды / файлы использовать. Я потратил два дня на исследование и изучение того, как была настроена моя среда, и на этом этапе я готов переделать всю виртуальную машину.

Конечное состояние: я хотел бы настроить виртуальную машину с запущенным dnsmasq, чтобы она могла служить как DNS-, так и DHCP-сервером для трех виртуальных локальных сетей, каждая со своей собственной подсетью.

Моя среда:

Может кто-нибудь пошагово объяснить, как настроить dnsmasq для достижения желаемого конечного состояния? Это не только поможет мне, но и позволит другим получить эти инструкции для использования в будущем.

Хотя я не хочу, чтобы было слишком много деталей, относящихся к среде (чтобы они были применимы к более широкой аудитории), дайте мне знать, если есть что-то, что мне нужно уточнить.

Что я пробовал до сих пор:

На данный момент, если я статически даю виртуальной машине в подсети 10.1.1.0/24 адрес, она может пинговать другие виртуальные машины в других подсетях. Однако, когда я пытаюсь выполнить ping 10.1.1.10 (IP-адрес, назначенный нику dnsmasq для этой подсети), он не разрешается. Сервер dnsmasq по-прежнему работает для первой подсети, для которой он был настроен (10.2.1.0/24), но я хочу, чтобы он работал для двух других подсетей.

Кроме того, чтобы уточнить, когда я говорю, что это не работает, я имею в виду, что тестовая виртуальная машина, которая у меня есть в одной из новых подсетей, не может пинговать ее dns-адрес подсети и не может получить доступ к Интернету.

Итак, чтобы повторить, я хочу довести то, что у меня есть до конечного состояния, описанного выше, и хотя я думаю, что сообществу было бы больше пользы от наличия пошаговых инструкций по настройке такого типа среды для своих инженеров, все Мне нужно понять, что мне нужно сделать, чтобы перевести текущее состояние в конечное.

Спасибо за помощь в продвижении!

Я поговорил со своим другом, который уже имел дело с подобными вещами раньше, и вот что мы сделали, чтобы довести среду до конечного состояния.

Во-первых, мне никогда не приходилось использовать dnsmasq -y, это сработало, как только я перезапустил службу dnsmasq и тестовую виртуальную машину

Первое, что мы сделали, это исправили сервер dnsmasq. В / etc / network / interfaces вы указываете IP-адрес, который хотите для этого ник, используйте маску сети 255.255.255.0 и определяете сеть для этого ник. Это будет выглядеть так:

auto eth1
iface eth1 inet static
 address 10.2.2.10
 netmask 255.255.255.0
 network 10.2.2.0
 broadcast 10.2.2.255

Единственное изменение касается eth0, в котором эти три строки уже были. Не уверен, нужны ли они (надеюсь, кто-то еще сможет это прояснить), но вот что я добавил:

up route add default gw 10.2.1.1
dns-search      my.lab
dns-nameservers <Corp-DNS-server>

Я также удалил две линии маршрута post-up, поскольку они не были нужны.

Наконец, мне нужно было исправить dnsmasq.conf; здесь я добавил интерфейс lo и закомментировал интерфейс no-dhcp:

interface=lo
interface=eth0
interface=eth1
interface=eth2
#no-dhcp-interface=eth0
#no-dhcp-interface=eth1
#no-dhcp-interface=eth2

Это исправило сервер. Следующее, что нужно сделать для достижения конечного состояния, - это настроить маршрутизатор, чтобы разрешить связь между vlan. Я уже сделал это до этого вопроса, но вот статья, чтобы сделать эту конфигурацию: http://www.cisco.com/c/en/us/support/docs/lan-switching/inter-vlan-routing/41860-howto-L3-intervlanrouting.html

Наконец, я обнаружил, что тестовая vm не добавляла сервер имен в свой файл resolv.conf, поэтому я добавил файл с именем tail в /etc/resolvconf/resolv.conf.d/ и просто добавил ip DNS-сервера для этой подсети:

nameserver 10.1.1.10

Как только я закончил, я смог запустить apt-get update и ping мои имена DNS. Затем я изменил тестовый файл интерфейса vm, чтобы он получал dhcp addr, и после перезагрузки он мог получать dhcp addr.

Надеюсь, это поможет всем! Не стесняйтесь оставлять любые комментарии, если вы хотите, чтобы я уточнить.