OpenVZ Forum


Home » International » German » Div. Probleme mit DHCP Server innerhalb VPS
Div. Probleme mit DHCP Server innerhalb VPS [message #26154] Wed, 16 January 2008 11:46
m.tinnemeier@squild.de is currently offline  m.tinnemeier@squild.de
Messages: 2
Registered: December 2007
Junior Member
Hallo an Alle!

Wir versuchen gerade (erfolglos) einen DHCP Server innerhalb eines VPS aufzusetzen. Die entsprechenden Howtos und Wiki-/Foreneinträge haben wir sofern möglich auf unser Szenario adaptiert.

Da wir derzeit selbst nicht genau wissen, wo das Problem liegen könnte versuche ich hier unseren Weg hin zur aktuellen Situation zu skizzieren – vielleicht haben wir ja dort schon relativ früh einen entsprechenden Fehler gemacht Wink

Unser Ausgangssetup bestand aus einer VE0 mit Debian Etch als Minimalinstallation sowie der OpenVZ laut Wiki (Softwarestand: Kernel 2.6.18-fza-028stab051.1-686, vzctl version 3.0.22-1dso1
). Danach haben wir erfolgreich mehrere VPS mit venet aufgesetzt, welche ihre Dienste (u.a. LDAP, Apache) problemlos gerecht werden.

Nun sollte zusätzlich noch ein VPS für unseren DHCP Server eingerichtet werden. Hierzu haben wir Informationen aus dem Wiki zu den Themen "Differences between venet and veth", "Virtual_Ethernet_device", "Bridge doesn't forward packets" und den Forenbeitrag "Running DHCP on VPS (ab Message ID #20765)" herangezogen.

Ein erstes Problem rührte aus einer schwammigen Formulierung im Wiki-Artikel "Differences between venet and veth". Dort heißt es "veth allows broadcasts in VE, so you can use even a DHCP server inside a VE [...].". Also haben wir laut Wiki aus dem venet ein veth Interface gemacht. Hierzu nutzten wir das im Wiki angegebene Script fürs veth-Routing "/usr/sbin/vznetaddroute" mit entsprechenden Änderungen in der VEID.conf und der vznet.conf genutzt. Leider ohne Erfolg.

Auf Basis des oben genannten Postings im Forum haben wir danach die veth-Routing Konfiguration analog zum Wiki-Artikel zu einer veth-Bridge Konfiguration geändert (wieder mit Änderungen der VEID.conf und vznet.conf). Hierzu erzeugen wir mit über die "/etc/network/interfaces" eine anonymous Bridge (ohne eigene IP) und weisen dieser initial das ansonsten unveränderte Primärinterface eth0 zu. Durch das Script aus dem Wiki-Artikel "/usr/sbin/vznetaddbr" wird dann bei Start von OpenVZ das entsprechende veth-Interface in die Bridge aufgenommen. Das Script "/usr/sbin/vznetaddbr" haben wir des weiteren auf Basis des genannten Foren-Eintrages um die Einträge "echo 1 > /proc/sys/net/ipv4/conf/br0/proxy_arp", "echo 1 > /proc/sys/net/ipv4/conf/br0/forwarding" sowie "ip route add $VETH_IP_ADDRESS dev $VZHOSTBR" ergänzt. Zudem wird auf der VE0 die iptables-Rule "iptables -A FORWARD -d 255.255.255.255 -j ACCEPT" gesetzt.

Aktueller Status:
Das System startet ohne Probleme, die Bridge wird erfolgreich initialisiert, die veth-Interfaces werden hinzugefügt und das Routing korrekt gesetzt (siehe Anhang). Alle VPS werden starten erfolgreich, alle Dienste innerhalb der VPS (z.B. Apache, LDAP, DNS, etc.) arbeiten korrekt.
Allerdings ist die VE0 nun nicht mehr direkt über Ihre IP erreichbar – die VPS allerdings schon. Wird vermutlich ein Routing-Problem in Zusammenhang mit der Bridge sein.
Zudem funktioniert eben der DHCP-Server nicht korrekt. Er registriert zwar mittlerweile (dank der Bridge) auf die Anfragen unserer Clients, die Clients erhalten jedoch keine IPs. Clientseitig heißt es immer dass die zugewiesene IP schon bereits im Netz vergeben wäre – was aber def. ausgeschlossen werden kann.

Wär schön, wenn jemand helfen könnte Smile

Liebe Grüße,
Matthias

------------------------------------
DHCPd-Log auf VPS


[...]
VPS dhcpd: DHCPDISCOVER from 00:1c:b3:bd:ac:d4 via eth0
VPS dhcpd: DHCPOFFER on 192.168.55.200 to 00:1c:b3:bd:ac:d4 via eth0
VPS dhcpd: DHCPREQUEST for 192.168.55.200 (192.168.55.11) from 00:1c:b3:bd:ac:d4 via eth0
VPS dhcpd: DHCPACK on 192.168.55.200 to 00:1c:b3:bd:ac:d4 via eth0
VPS dhcpd: DHCPREQUEST for 192.168.55.200 (192.168.55.11) from 00:1c:b3:bd:ac:d4 via eth0
VPS dhcpd: DHCPACK on 192.168.55.200 to 00:1c:b3:bd:ac:d4 via eth0
VPS dhcpd: Abandoning IP address 192.168.55.200: declined.
VPS dhcpd: DHCPDECLINE of 192.168.55.200 from 00:1c:b3:bd:ac:d4 via eth0: not found
[...]
 
------------------------------------
Netzwerk-Setup VE0:

# The loopback network interface
auto lo
iface lo inet loopback

# OPENVZ anonymous bridge
# 
# (anonymous bridge = a bridge without
# an assigned IP)
auto br0
iface br0 inet manual
	bridge_ports eth0
	bridge_maxwait 0


# The primary network interface
auto eth0
iface eth0 inet static
	address 192.168.55.5
	network 192.168.55.0
	netmask	255.255.255.0
	broadcast 192.168.55.255
	gateway 192.168.55.254

------------------------------------
Routingtabelle DHCPd-VPS

# ip route show
192.168.55.11 dev br0  scope link 
192.168.55.5 dev br0  scope link 
192.168.55.0/24 dev eth0  proto kernel  scope link  src 192.168.55.5 
default via 192.168.55.254 dev eth0

------------------------------------
Netzwerk-Interfaces VE0

# ifconfig -a
br0       Protokoll:Ethernet  Hardware Adresse 00:0C:29:0C:7A:1A  
          inet6 Adresse: fe80::218:f3ff:fe0d:2edd/64 Gültigkeitsbereich:Verbindung
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:24758 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2917 errors:0 dropped:0 overruns:0 carrier:0
          Kollisionen:0 Sendewarteschlangenlänge:0 
          RX bytes:3819612 (3.6 MiB)  TX bytes:236898 (231.3 KiB)

eth0      Protokoll:Ethernet  Hardware Adresse 00:18:F3:0D:2E:DD  
          inet Adresse:192.168.55.5  Bcast:192.168.55.255  Maske:255.255.255.0
          inet6 Adresse: fe80::218:f3ff:fe0d:2edd/64 Gültigkeitsbereich:Verbindung
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:42497 errors:0 dropped:0 overruns:0 frame:0
          TX packets:30174 errors:0 dropped:0 overruns:0 carrier:0
          Kollisionen:0 Sendewarteschlangenlänge:1000 
          RX bytes:6101271 (5.8 MiB)  TX bytes:6908267 (6.5 MiB)
          Interrupt:193 

lo        Protokoll:Lokale Schleife  
          inet Adresse:127.0.0.1  Maske:255.0.0.0
          inet6 Adresse: ::1/128 Gültigkeitsbereich:Maschine
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:106 errors:0 dropped:0 overruns:0 frame:0
          TX packets:106 errors:0 dropped:0 overruns:0 carrier:0
          Kollisionen:0 Sendewarteschlangenlänge:0 
          RX bytes:10878 (10.6 KiB)  TX bytes:10878 (10.6 KiB)

sit0      Protokoll:IPv6-nach-IPv4  
          NOARP  MTU:1480  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          Kollisionen:0 Sendewarteschlangenlänge:0 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

veth100.0 Protokoll:Ethernet  Hardware Adresse 00:0C:29:0C:7A:3A  
          inet6 Adresse: fe80::20c:29ff:fe0c:7a3a/64 Gültigkeitsbereich:Verbindung
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3822 errors:0 dropped:0 overruns:0 frame:0
          TX packets:12067 errors:0 dropped:0 overruns:0 carrier:0
          Kollisionen:0 Sendewarteschlangenlänge:0 
          RX bytes:2919192 (2.7 MiB)  TX bytes:1260384 (1.2 MiB)


------------------------------------
Bridge VE0

# brctl show
bridge name	bridge id		STP enabled	interfaces
br0		8000.000c290c7a1a	no		eth0
							veth100.0




------------------------------------
Relevanter Auszug aus der VPS-Config
Rest Standard:


# cat /etc/vz/conf/100.conf

[...]

# Don't create a venet device!
#IP_ADDRESS=""

CONFIG_CUSTOMIZED="yes"

# Bridged networking
VZHOSTBR="br0"
VETH_IP_ADDRESS="192.168.55.11"
NETIF="ifname=eth0,mac=00:0C:29:0C:7A:2B,host_ifname=veth100.0,host_mac=00:0C:29:0C:7A:3A"


------------------------------------
Netzwerk-Setup DHCPd-VPS

# Auto generated interfaces
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
	address 192.168.55.11
	netmask 255.255.255.0
	broadcast 192.168.55.255
	network 192.168.55.0
	gateway 192.168.55.254
	dns-nameserver 192.168.55.11


------------------------------------
Routingtabelle DHCPd-VPS

# ip route show
192.168.55.0/24 dev eth0  proto kernel  scope link  src 192.168.55.11 
default via 192.168.55.254 dev eth0


Previous Topic: 2.6.9-023stab046.2-smp kompatibel mit libc 2.7?
Next Topic: DM-Crypt und Cryptsetup-LUKS innerhalb der VServer?
Goto Forum:
  


Current Time: Fri Oct 18 07:58:54 GMT 2024

Total time taken to generate the page: 0.05103 seconds