Как я вижу, мой вопрос объединили с этим, поэтому распишу здесь свой "путь".
Короче решил настроить сеть, где главным DHCP\DNS\NAT будет старый системник (2GHz\250MB DDR-400\USB Flash 1GB) с записанным на флэшку OpenWRT.
Почему так - потому что был опыт настройки OpenWRT на всяких WiFI роутерах. Система очень лёгкая, и при этом, функционально не уступает Debian\CentOS\NetBSD. (Во всяком случае - в популярных мелочах). Серьезно, Прямо сейчас этот динозавр обслуживает сеть на ~100ПК, Режет рекламу прямо на входе (через встроенный плагин Adblock), а также доступ к заблокированным сайтам через OpenVPN. И потребляет всего 30-40МБ ОЗУ. Процессор вообще выше 10% не поднимался. Собственно причин по которой было сделано именно так две:
- Наличие кучи старых ненужных системников
- Возможность дублировать флэшку, и, при надобности, быстро восстановить работу сети (Если молния спалит сетевую, или материнка не выдержит 24\7 работы.. Вообщем неважно, это мой кактус и мне его грызть).
Но вернемся ближе к проблеме: Как заставить нормально работать домен с Active Directory без установки роли DNS. Пришлось немного упороться в Гугл. И в принцыпе в итоге был сделан нижеприведённый конфиг, с которым почти все функции работают.
Почти все, потому что например Понадобилось сделать файловую шару через DFS, но в диспетчере настройки DFS - пространство имён упорно не хотело создаваться, ссылаясь на ошибку RPC. Хотя если поднять DNS на Контроллере домена, создать пространство имён (а оно видимо создаётся только на DNS от Windows), и потом удалить роль DNS с контроллера домена - то шара DFS продолжает нормально работать (пока правда мало тестил).
Итог: Если не юзать фичи AD, сильно завязанные на Microsoft DNS, то можно жить с NAT DNS на любом удобном устройстве с поддержкой Dnsmasq.
Собственно конфиг: (имя домена пишите под себя)
Моя сеть: 192.168.121.0/24
# Change the following lines if you want dnsmasq to serve SRV
# records.
# You may add multiple srv-host lines.
# The fields are ,,,,
#Domain
domain=dc.test.ua
#Time Update Server
#address=/time.windows.com/192.168.121.2
#For Win7 and later
#dhcp-option-252,"\n"
#Banned Hosts
#addn-hosts=/etc/banned_hosts
# IF AD DNS be also Used (transfer requests from zone to ip)
#server=/dc.test.ua/192.168.121.2
#Locan domain name if WIN-disabled
#local=/dc.test.ua/
#DNS Servers List
server=/121.168.192.in-addr.arpa/192.168.121.1
#server=/121.168.192.in-addr.arpa/192.168.121.2
#---------------------------------------------------------------
# REGISTER CNAME TXT
#---------------------------------------------------------------
#For this type of registration you need in
# file /etc/hosts something like this:
# 192.168.121.15 troll.dc.test.ua troll
# and then here write:
# cname=ALIAS,REAL_NAME
#cname=controller.dc.test.ua,ise-dc.dc.test.ua
#cname=rdp.dc.test.ua,ise-rdp.dc.test.ua
#cname=fileserver.dc.test.ua,ise-fs.dc.test.ua
#cname=mail.dc.test.ua,ise-mail.dc.test.ua
#-------------------------------------
# MX RECORDS
#-------------------------------------
#Return MX mail.dc.test to PC named ise-mail.dc.test with priority 10
#mx-host=dc.test.ua,mail.dc.test.ua,10
#Default MX with localmx option
#mx-target=mail.dc.test.ua
#Return MX, which pointed to mx-destination for ALL local PCs
#localmx
#---------------------------------------
# TXT RECORDS
#---------------------------------------
#TXT records. Also we can write SPF here
txt-record=dc.test.ua,"v=spf1 a -all"
txt-record=dc.test.ua,"Wellcome to The Dark Side"
#=============================================================
#Range of IP Addresses for servers, etc,
#dhcp-range=192.168.121.10,192.168.121.30,24h
#MAXimum DHCP-Leases. Default 150
#dhcp-lease-max=222
#IPv6 Range
#dhcp-range=1234::, ra-only
#RANGE OPTIONS
#dhcp-option=1,255.255.255.0 #NETMASK
#dhcp-option=3,192.168.121.1 #GATEWAY
#dhcp-option=6,192.168.121.1 #DNS Servers
#dhcp-option=15,dc.test.ua #DNS Domain name
#dhcp-option=19,1 #option IP-forwarding ON
#dhcp-option=28,192.168.121.255 #BROADCAST
#dhcp-option=42,192.168.121.1 #NTP time server
#dhcp-option=40,DC #NIS Domain name
#dhco-option=41,192.168.121.2 #NIS Server
#dhcp-option=44,192.168.121.2 #WINS
#dhco-option=45,192.168.121.2 #NetBIOS Server
#dhcp-option=73,192.168.121.2 #Finger Server
#dhcp-option=46,8 #NetBIOS Node
#dhcp-authoritative #IF THIS DHCP IS ONLY ONE IN Network
#------------------------------------
# LOGGING tail -f /var/log/syslog o journalctl -f
#------------------------------------
#log-queries
#-------------------------------------------------
# REGISTER A and SRV for Active Directory
#-------------------------------------------------
#-------------------------------------------------
# Windows AD | _msdcs.dc.test.ua | Zone
#-------------------------------------------------
#-->root
cname=430732cb-e159-4333-87d1-6cea750f5b25._msdcs.dc.test.ua,ISE-DC.dc.test.ua
cname=e1b66cc4-35fc-4cd5-8d6c-ab4245f280fe._msdcs.dc.test.ua,ISE-DC2.dc.test.ua
#-->root\dc
#-->root\dc\sites
#-->root\dc\sites\Default-First-Site-Name
#-->root\dc\sites\Default-First-Site-Name\tcp
srv-host=_kerberos._tcp.Default-First-Site-Name._sites.dc._msdcs.dc.test.ua,ISE-DC.dc.test.ua,88,0,100
srv-host=_kerberos._tcp.Default-First-Site-Name._sites.dc._msdcs.dc.test.ua,ISE-DC2.dc.test.ua,88,0,100
srv-host=_ldap._tcp.Default-First-Site-Name._sites.dc._msdcs.dc.test.ua,ISE-DC.dc.test.ua,389,0,100
srv-host=_ldap._tcp.Default-First-Site-Name._sites.dc._msdcs.dc.test.ua,ISE-DC2.dc.test.ua,389,0,100
#-->root\dc\tcp
srv-host=_kerberos._tcp.dc._msdcs.dc.test.ua,ISE-DC.dc.test.ua,88,0,100
srv-host=_kerberos._tcp.dc._msdcs.dc.test.ua,ISE-DC2.dc.test.ua,88,0,100
srv-host=_ldap._tcp.dc._msdcs.dc.test.ua,ISE-DC.dc.test.ua,389,0,100
srv-host=_ldap._tcp.dc._msdcs.dc.test.ua,ISE-DC2.dc.test.ua,389,0,100
#-->root\domains
#-->root\domains\27b71e15-e809-4875-aa12-cd7575e3f3ab
#-->root\domains\27b71e15-e809-4875-aa12-cd7575e3f3ab\tcp
srv-host=_ldap._tcp.27b71e15-e809-4875-aa12-cd7575e3f3ab.domains._msdcs.dc.test.ua,ISE-DC.dc.test.ua,389,0,100
srv-host=_ldap._tcp.27b71e15-e809-4875-aa12-cd7575e3f3ab.domains._msdcs.dc.test.ua,ISE-DC2.dc.test.ua,389,0,100
#-->root\gc
address=/gc._msdcs.dc.test.ua/192.168.121.2
address=/gc._msdcs.dc.test.ua/192.168.121.3
#-->root\gc\sites
#-->root\gc\sites\Default-First-Site-Name
#-->root\gc\sites\Default-First-Site-Name\tcp
srv-host=_ldap._tcp.Default-First-Site-Name._sites.gc._msdcs.dc.test.ua,ISE-DC.dc.test.ua,3268,0,100
srv-host=_ldap._tcp.Default-First-Site-Name._sites.gc._msdcs.dc.test.ua,ISE-DC2.dc.test.ua,3268,0,100
#-->root\gc\tcp
srv-host=_ldap._tcp.gc._msdcs.dc.test.ua,ISE-DC.dc.test.ua,3268,0,100
srv-host=_ldap._tcp.gc._msdcs.dc.test.ua,ISE-DC2.dc.test.ua,3268,0,100
#-->root\pdc
#-->root\gc\tcp
srv-host=_ldap._tcp.pdc._msdcs.dc.test.ua,ISE-DC.dc.test.ua,389,0,100
#-------------------------------------------------
# Windows AD | dc.test.ua | Zone
#-------------------------------------------------
#-->root
#-->root\sites
#-->root\sites\Default-First-Site-Name
#-->root\sites\Default-First-Site-Name\tcp
srv-host=_gc._tcp.Default-First-Site-Name._sites.dc.test.ua,ISE-DC.dc.test.ua,3268,0,100
srv-host=_gc._tcp.Default-First-Site-Name._sites.dc.test.ua,ISE2-DC.dc.test.ua,3268,0,100
srv-host=_kerberos._tcp.Default-First-Site-Name._sites.dc.test.ua,ISE-DC.dc.test.ua,88,0,100
srv-host=_kerberos._tcp.Default-First-Site-Name._sites.dc.test.ua,ISE2-DC.dc.test.ua,88,0,100
srv-host=_ldap._tcp.Default-First-Site-Name._sites.dc.test.ua,ISE-DC.dc.test.ua,389,0,100
srv-host=_ldap._tcp.Default-First-Site-Name._sites.dc.test.ua,ISE2-DC.dc.test.ua,389,0,100
#-->root\tcp
srv-host=_gc._tcp.dc.test.ua,ISE-DC.dc.test.ua,3268,0,100
srv-host=_gc._tcp.dc.test.ua,ISE-DC2.dc.test.ua,3268,0,100
srv-host=_kerberos._tcp.dc.test.ua,ISE-DC.dc.test.ua,88,0,100
srv-host=_kerberos._tcp.dc.test.ua,ISE-DC2.dc.test.ua,88,0,100
srv-host=_kpasswd._tcp.dc.test.ua,ISE-DC.dc.test.ua,464,0,100
srv-host=_kpasswd._tcp.dc.test.ua,ISE-DC2.dc.test.ua,464,0,100
srv-host=_ldap._tcp.dc.test.ua,ISE-DC.dc.test.ua,389,0,100
srv-host=_ldap._tcp.dc.test.ua,ISE-DC2.dc.test.ua,389,0,100
#-->root\udp
srv-host=_kerberos._udp.dc.test.ua,ISE-DC.dc.test.ua,88,0,100
srv-host=_kerberos._udp.dc.test.ua,ISE-DC2.dc.test.ua,88,0,100
srv-host=_kpasswd._udp.dc.test.ua,ISE-DC.dc.test.ua,464,0,100
srv-host=_kpasswd._udp.dc.test.ua,ISE-DC2.dc.test.ua,464,0,100
#-->root\DomainDnsZones
address=/DomainDnsZones.dc.test.ua/192.168.121.2
#-->root\DomainDnsZones\sites
#-->root\DomainDnsZones\sites\Default-First-Site-Name
#-->root\DomainDnsZones\sites\Default-First-Site-Name\tcp
srv-host=_ldap._tcp.Default-First-Site-Name._sites.DomainDnsZones.dc.test.ua,ISE-DC.dc.test.ua,389,0,100
#-->root\DomainDnsZones\tcp
srv-host=_ldap._tcp.DomainDnsZones.dc.test.ua,ISE-DC.dc.test.ua,389,0,100
#-->root\ForestDnsZones
address=/ForestDnsZones.dc.test.ua/192.168.121.2
#-->root\ForestDnsZones\sites
#-->root\ForestDnsZones\sites\Default-First-Site-Name
#-->root\DomainDnsZones\sites\Default-First-Site-Name\tcp
srv-host=_ldap._tcp.Default-First-Site-Name._sites.ForestDnsZones.dc.test.ua,ISE-DC.dc.test.ua,389,0,100
#-->root\ForestDnsZones\tcp
srv-host=_ldap._tcp.ForestDnsZones.dc.test.ua,ISE-DC.dc.test.ua,389,0,100
#-------ENT NEW CONFIG------------