Dnsmasq'ı yerel ana bilgisayar adlarını dualstack ipv4 & ipv6 ile çözecek şekilde nasıl yapılandırabilirim?


3

Sorun : Evde bir yönlendiricim (openwrt) var ve bilgisayarların sadece ip yerine ana bilgisayar adını yazarak yerel alt ağda birbirine bağlanmasını istiyorum. Şu anda dns sorgusu yönlendiriciye gönderildiğinde, yönlendirici yalnızca ipv4 adresiyle (ipv6 adresi olmadan) yanıt verir. Yönlendiricinin hem ipv4 hem de ipv6 adresleriyle yanıt vermesini istiyorum.

Senaryo : Openwrt yüklü yönlendiricim var - CHAOS CALMER (15.05.1, r48532). İpv4 için 192.168.1.0/24 alt ağına sahibim. LAN üzerindeki tüm bilgisayarlar konuşabilir / birbiriyle bağlantı kurabilir. İnternete bağlanmak istiyorlarsa (örneğin google.com) yönlendiricideki NAT üzerinden giderler. Temel yapılandırma. İpv6 için ULA öneki oluşturdum (bazı jeneratörlerle) ve web arayüzü (luci) ile yapılandırdım. İpv6 ile internet (ISS'den) yok, bu yüzden tüm iletişim yerel bilgisayarlarla sınırlı.

Ne çalışır:
* bilgisayarları yönlendirici gelen IPv4 hem de IPv6 ip hem edinebilirsiniz
* bilgisayarların IPv4 hem de IPv6 aracılığıyla birbirlerine iletişim kurabilir (örneğin ping, ping6ya da ssh -4, ssh -6)
* bilgisayarlar google.com için yönlendirici üzerinde dns sunucusunu sormak ve IPv4 hem de IPv6 alabilirsiniz adresler
* bilgisayarlar dns sunucusundan yönlendiricideki başka bir bilgisayarın ana bilgisayar adını sorabilir ve yalnızca ipv4 adresini alabilir
* Statik ana bilgisayar adını (luci aracılığıyla) ipv6 adresine ayarlayabilirim ve lan üzerindeki bilgisayarlar bunu sorduğunda ipv6 adresini doğru alırlar

Bana tuhaf gelen ipv6 adresleri için hostname çözünürlüğünü alamıyorum, çünkü ipv4 için mükemmel çalışıyor.

Dnsmasq'ı yerel ana bilgisayar adlarını hem ipv4 AND ipv6 ile çözecek şekilde nasıl yapılandırabilirim?


/ Etc / yapılandırma / DHCP

config dnsmasq                      
        option localise_queries '1'        
        option rebind_protection '1'
        option rebind_localhost '1'        
        option authoritative '1'                 
        option readethers '1'                    
        option leasefile '/tmp/dhcp.leases'       
        option noresolv '1'                       
        list server '127.0.0.1#5353' # <-- I am using dnscrypt
        list server '/pool.ntp.org/2620:0:ccc::2' 
        list server '/pool.ntp.org/2620:0:ccd::2' 
        list server '/pool.ntp.org/208.67.222.222'
        list server '/pool.ntp.org/208.67.220.220'
        option local '/home/'  
        option domain 'home'   
        option nonegcache '1' 
        option domainneeded '1'
        option boguspriv '1'  

config dhcp 'lan'         
        option interface 'lan'
        option start '100'    
        option limit '150'   
        option leasetime '12h'  
        option force '1'      
        option ra 'server'      
        option dhcpv6 'server'  
        option ra_default '1'
        option ra_management '1'

config dhcp 'wan'          
        option interface 'wan'              
        option ignore '1'                            

config odhcpd 'odhcpd'                               
        option maindhcp '0'                          
        option leasefile '/tmp/hosts/odhcpd'         
        option leasetrigger '/usr/sbin/odhcpd-update'

dnsmasq --versiyon

Dnsmasq version 2.73  Copyright (c) 2000-2015 Simon Kelley
Compile time options: IPv6 GNU-getopt no-DBus no-i18n no-IDN DHCP DHCPv6 no-Lua TFTP no-conntrack no-ipset no-auth no-DNSSEC loop-detect inotify

This software comes with ABSOLUTELY NO WARRANTY.
Dnsmasq is free software, and you are welcome to redistribute it
under the terms of the GNU General Public License, version 2 or 3.

opkg listesi yüklü

base-files - 157.2-r48532
busybox - 1.23.2-1
bzip2 - 1.0.6-2
ca-certificates - 20150426
ddns-scripts - 2.4.3-2
dnscrypt-proxy - 1.4.3-1
dnsmasq-dhcpv6 - 2.73-1
dropbear - 2015.67-1
firewall - 2015-07-27
fstools - 2016-01-10-96415afecef35766332067f4205ef3b2c7561d21
hostapd-common - 2015-03-25-1
ip6tables - 1.4.21-1
iptables - 1.4.21-1
iw - 3.17-1
jshn - 2015-11-08-10429bccd0dc5d204635e110a7a8fae7b80d16cb
jsonfilter - 2014-06-19-cdc760c58077f44fc40adbbe41e1556a67c1b9a9
kernel - 3.18.23-1-dbb19f09b72b69f418ee332a4882bbad
kmod-cfg80211 - 3.18.23+2015-03-09-3
kmod-crypto-aes - 3.18.23-1
kmod-crypto-arc4 - 3.18.23-1
kmod-crypto-core - 3.18.23-1
kmod-eeprom-93cx6 - 3.18.23-1
kmod-gpio-button-hotplug - 3.18.23-1
kmod-ip6tables - 3.18.23-1
kmod-ipt-conntrack - 3.18.23-1
kmod-ipt-core - 3.18.23-1
kmod-ipt-nat - 3.18.23-1
kmod-ipv6 - 3.18.23-1
kmod-leds-gpio - 3.18.23-1
kmod-lib-crc-ccitt - 3.18.23-1
kmod-lib-crc-itu-t - 3.18.23-1
kmod-mac80211 - 3.18.23+2015-03-09-3
kmod-nf-conntrack - 3.18.23-1
kmod-nf-conntrack6 - 3.18.23-1
kmod-nf-ipt - 3.18.23-1
kmod-nf-ipt6 - 3.18.23-1
kmod-nf-nat - 3.18.23-1
kmod-nf-nathelper - 3.18.23-1
kmod-nls-base - 3.18.23-1
kmod-ppp - 3.18.23-1
kmod-pppoe - 3.18.23-1
kmod-pppox - 3.18.23-1
kmod-rt2800-lib - 3.18.23+2015-03-09-3
kmod-rt2800-mmio - 3.18.23+2015-03-09-3
kmod-rt2800-pci - 3.18.23+2015-03-09-3
kmod-rt2800-soc - 3.18.23+2015-03-09-3
kmod-rt2x00-lib - 3.18.23+2015-03-09-3
kmod-rt2x00-mmio - 3.18.23+2015-03-09-3
kmod-rt2x00-pci - 3.18.23+2015-03-09-3
kmod-slhc - 3.18.23-1
kmod-usb-core - 3.18.23-1
kmod-usb-ohci - 3.18.23-1
kmod-usb2 - 3.18.23-1
libacl - 20140812-1
libattr - 20150220-1
libblobmsg-json - 2015-11-08-10429bccd0dc5d204635e110a7a8fae7b80d16cb
libbz2 - 1.0.6-2
libc - 0.9.33.2-1
libgcc - 4.8-linaro-1
libip4tc - 1.4.21-1
libip6tc - 1.4.21-1
libiwinfo - 2015-06-01-ade8b1b299cbd5748db1acf80dd3e9f567938371
libiwinfo-lua - 2015-06-01-ade8b1b299cbd5748db1acf80dd3e9f567938371
libjson-c - 0.12-1
libjson-script - 2015-11-08-10429bccd0dc5d204635e110a7a8fae7b80d16cb
liblua - 5.1.5-1
libnl-tiny - 0.1-4
libopenssl - 1.0.2g-1
libpcre - 8.38-1
libpolarssl - 1.3.14-1
libpthread - 0.9.33.2-1
librt - 0.9.33.2-1
libsodium - 1.0.2-1
libubox - 2015-11-08-10429bccd0dc5d204635e110a7a8fae7b80d16cb
libubus - 2015-05-25-f361bfa5fcb2daadf3b160583ce665024f8d108e
libubus-lua - 2015-05-25-f361bfa5fcb2daadf3b160583ce665024f8d108e
libuci - 2015-08-27.1-1
libuci-lua - 2015-08-27.1-1
libustream-polarssl - 2015-07-09-c2d73c22618e8ee444e8d346695eca908ecb72d3
libxtables - 1.4.21-1
lua - 5.1.5-1
luci - git-16.018.33482-3201903-1
luci-app-ddns - 2.2.4-1
luci-app-firewall - git-16.018.33482-3201903-1
luci-base - git-16.018.33482-3201903-1
luci-lib-ip - git-16.018.33482-3201903-1
luci-lib-nixio - git-16.018.33482-3201903-1
luci-mod-admin-full - git-16.018.33482-3201903-1
luci-proto-ipv6 - git-16.018.33482-3201903-1
luci-proto-ppp - git-16.018.33482-3201903-1
luci-ssl - git-16.018.33482-3201903-1
luci-theme-bootstrap - git-16.018.33482-3201903-1
mtd - 21
netifd - 2015-12-16-245527193e90906451be35c2b8e972b8712ea6ab
odhcp6c - 2015-07-13-024525798c5f6aba3af9b2ef7b3af2f3c14f1db8
odhcpd - 2015-11-19-01d3f9d64486ac1daa144848944e877e7f0cb762
openssl-util - 1.0.2g-1
opkg - 9c97d5ecd795709c8584e972bfdf3aee3a5b846d-9
ppp - 2.4.7-6
ppp-mod-pppoe - 2.4.7-6
procd - 2015-10-29.1-d5fddd91b966424bb63e943e789704d52382cc18
px5g - 3
rpcd - 2015-01-10-f00890cd6eb47ad9bb5da0fb6c50aedc8406e7c5
swconfig - 10
tar - 1.28-2
ubox - 2015-11-22-c086167a0154745c677f8730a336ea9cf7d71031
ubus - 2015-05-25-f361bfa5fcb2daadf3b160583ce665024f8d108e
ubusd - 2015-05-25-f361bfa5fcb2daadf3b160583ce665024f8d108e
uci - 2015-08-27.1-1
uhttpd - 2015-11-08-fe01ef3f52adae9da38ef47926cd50974af5d6b7
uhttpd-mod-ubus - 2015-11-08-fe01ef3f52adae9da38ef47926cd50974af5d6b7
usign - 2015-05-08-cf8dcdb8a4e874c77f3e9a8e9b643e8c17b19131
wget - 1.17.1-1
wpad-mini - 2015-03-25-1
zlib - 1.2.8-1

Yanıtlar:


0

Özel bir OpenWrt görüntüsü kullanmıyorsanız, varsayılan DHCP / DNS takımyıldızı aşağıdaki gibidir:

  • dnsmasq DHCPv4 ve DNS yapar
  • dnsmasq DHCPv6 desteği olmadan gönderilir (bunun sizin için neden farklı olduğunu bilmeden)
  • odhcpd DHCPv6 yapar
  • dnsmasq hiçbir şekilde odhcpd ile arayüz oluşturmaz.

Bu yüzden sadece IPv4 adreslerini alıyorsunuz.

Bu bir dosya oluşturur odhcpd görünür /etc/hostsise biçim /tmp/hosts/odhcpd(ya da her türlü yer kurulduğundan /etc/config/dhcpiçinde odhcpdbölüm). Bu işlemin gerçekleşmesi için, ayarlamak gerekir option dhcpv6 serveryılında /etc/config/dhcp.

Dnsmasq'in aşağıdaki yapılandırma değişikliklerinden birini yaparak bu dosyayı kullanmasını sağlayabilirsiniz:

  • In /etc/config/dhcpiçinde dnsmasqbölümüne ekleyinlist addnhosts /tmp/hosts/odhcpd
  • Gelen /etc/dnsmasq.confeklentiaddn-hosts=/tmp/hosts/odhcpd

Bu girişleri ekledikten ve dnsmasq ( /etc/init.d/dnsmasq restart) 'ı yeniden başlattıktan sonra dnsmasq , hem IPv4 hem de IPv6 adresleriyle doğru şekilde yanıt verir. Yine de avantaj elde edemezsin.

Ayrıca, DHCPv6 kullanmayan, ancak yalnızca durumsuz otomatik yapılandırma işlemlerinin IPv6 adresleriyle görünmeyeceğini unutmayın.


Ben ekledi list addnhosts /tmp/hosts/odhcpdve sonra neredeyse çalışıyordu - nslookup hostnameyönlendirici üzerinde ipv6 adresini gösterdi, ancak diğer bilgisayarlarda yoktu. Ben satırları kaldırmak zorunda kaldı option local '/home/'ve option domain 'home'daha sonra mükemmel çalışmaya başladı.
kotoko
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.