Raspberry Pi'yi DHCP / yerel DNS sunucusu olarak yapılandırma, Stretezy vs Wheezy


0

Dnsmasq'ı eski bir Raspberry Pi'de DHCP sunucusu / çözümleyici olarak kullanıyorum, yıllarca sorunsuz çalışıyorum. Uzatmak ve aynı zamanda bir Raspberry Pi 3B + 'a yükseltmeye karar verdim.

Ne yazık ki, yeni Pi'yi, eski Pi ile aynı DHCP ve DNS hizmetlerini sağlayacak şekilde yapılandırma konusunda mücadele ediyorum. Her iki hizmet için de dnsmasq kullanıyorum. Yeni Pi'yi DHCP / DNS hizmetleri sağlamadığında ve yerine eski Pi'den alıyorsa, düzgün çalışacak şekilde yapılandırabilirim. Ancak bu hizmetleri sağlamaya çalıştığımda internet bağlantımı kaybediyorum. Nasıl yapılacağını bilmeme rağmen ağ geçidini yapılandırmayı berbat hissediyorum ve nasıl çalıştırılacağını bildiğim tanılamalar ağ geçidiyle ilgili bir sorun göstermiyor gibi görünüyor.

Eski Pi’de, wheezy’de çalışan / etc / network / interfaces içindeki ethernet arayüzünü aşağıdaki gibi yapılandırdım:

iface eth0 inet static
address 10.0.0.4
netmask 255.255.255.0
gateway 10.0.0.2

Yeni Pi'de çalışan streç, ethernet arabirimini dhcpcd.conf içinde yapılandırıyorum (burada farklı bir statik IP adresi kullandığımı unutmayın, bu nedenle iki cihaz geçişi etkilemeye çalışırken çarpışmaz. yeni cihaz):

interface eth0
static ip_address=10.0.0.5/24
static routers=10.0.0.2

Eğer yeni Pi'yi bağımsız olarak çalıştırırsam, bu üç çizgiyi yorumluyorum, o zamandan beri yeni Pi IP adresini eski Pi'den alıyor.

Uzatma altında, önyükleme işlemi hem resolvconf hem de dhcpcd rewriting /etc/resolv.conf dosyasını içeriyor gibi görünüyor. Ayrıca resolvconf /run/dnsmasq/resolv.conf... adresinde ayrı bir resolv.conf dosyası oluşturur ve ikisi aynı değildir. Ayrıca neden iki ayrı dosya bulunduğunu ve her birinin hangi rolü oynadığını da anlamıyorum.

İşte bir önyüklemeden sonra /etc/resolv.conf:

# Generated by resolvconf
nameserver 127.0.0.1
# external nameservers
nameserver 8.8.8.8
nameserver 8.8.4.4

İşte / run / dnsmasq/resolv.conf:

# Generated by resolvconf

İşte resolvconf.conf:

# Configuration for resolvconf(8)
# See resolvconf.conf(5) for details

resolv_conf=/etc/resolv.conf
# If you run a local name server, you should uncomment the below line and
# configure your subscribers configuration files below.
name_servers=127.0.0.1, 8.8.8.8, 8.8.4.4

# Mirror the Debian package defaults for the below resolvers
# so that resolvconf integrates seemlessly.
dnsmasq_resolv=/var/run/dnsmasq/resolv.conf
pdnsd_conf=/etc/pdnsd.conf
unbound_conf=/var/cache/unbound/resolvconf_resolvers.conf

resolv.conf.tail:

# external nameservers
nameserver 8.8.8.8
nameserver 8.8.4.4

ve dhcpcd.conf:

# A sample configuration for dhcpcd.
# See dhcpcd.conf(5) for details.

# Allow users of this group to interact with dhcpcd via the control socket.
#controlgroup wheel

# Inform the DHCP server of our hostname for DDNS.
hostname

# Use the hardware address of the interface for the Client ID.
clientid
# or
# Use the same DUID + IAID as set in DHCPv6 for DHCPv4 ClientID as per RFC4361.
# Some non-RFC compliant DHCP servers do not reply with this set.
# In this case, comment out duid and enable clientid above.
#duid

# Persist interface configuration when dhcpcd exits.
persistent

# Rapid commit support.
# Safe to enable by default because it requires the equivalent option set
# on the server to actually work.
option rapid_commit

# A list of options to request from the DHCP server.
option domain_name_servers, domain_name, domain_search, host_name
option classless_static_routes
# Most distributions have NTP support.
option ntp_servers
# Respect the network MTU. This is applied to DHCP routes.
option interface_mtu

# A ServerID is required by RFC2131.
require dhcp_server_identifier

# Generate Stable Private IPv6 Addresses instead of hardware based ones
slaac private

# A list of options to request from the DHCP server.
option domain_name_servers, domain_name, domain_search, host_name
option classless_static_routes
# Most distributions have NTP support.
option ntp_servers
# Respect the network MTU. This is applied to DHCP routes.
option interface_mtu

# A ServerID is required by RFC2131.
require dhcp_server_identifier

# Generate Stable Private IPv6 Addresses instead of hardware based ones
slaac private

# This section needs to be live if mycroft is serving as
# the DHCP server for the LAN. Conversely, if it isn't
# serving in that role, it needs to be commented out.
interface eth0
static ip_address=10.0.0.5/24
static routers=10.0.0.2
#static domain_name_servers=127.0.0.1,8.8.8.8,8.8.4.4

# not using ip6!
#static ip6_address=fd51:42f8:caae:d92e::ff/64

# domain name servers specified in resolv.conf.tail
#static domain_name_servers=192.168.0.1 8.8.8.8 fd51:42f8:caae:d92e::1

# It is possible to fall back to a static IP if DHCP fails:
# define static profile
#profile static_eth0
#static ip_address=192.168.1.23/24
#static routers=192.168.1.1
#static domain_name_servers=192.168.1.1

# fallback to static profile on eth0
#interface eth0
#fallback static_eth0

Öneriler?


Wheezy sysvinit kullanıyor, Stretch ise ağ ile ilgili bazı görevleri otomatikleştiren systemd kullanıyor.
Ipor Sircer

Thanx, @IporSircer; bu aşağı inmeye çalıştığım bir başka öğrenme eğrisi. Yapılandırmada neyi yanlış yaptığım hakkında bir fikriniz var mı?
Mark Olbert,

Konfigürasyonun iyi olduğunu düşünüyorum, sadece sistem ve ağ yöneticisi sizden daha akıllı olduklarını düşünüyor. (systemd kullanmıyorum, onunla ilgili başka garip hatalar da vardı.)
Ipor Sircer 13:18

Lol! Şu an benden daha akıllı olduğundan eminim.
Mark Olbert
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.