OpenVZ Forum


Home » International » German » IPv6 - Route festlegen
IPv6 - Route festlegen [message #36001] Mon, 11 May 2009 17:14 Go to previous message
Sven
Messages: 2
Registered: May 2009
Junior Member
Hi there!

Ich hätt' da gern mal ein Problem Wink

Das Grundproblem ist, dass keine IPv6-Routen beim hochfahren der einzelnen Container gesetzt werden, zumindest nicht bei mir.
Ich definiere die statische IPv6-Adresse in der config des containers, die Adresse wird auch zugeteilt, aber es werden keinerlei routen gesetzt.

Aktuell umgehe ich das Problem, indem ich auf dem Hostsystem nach dem hochfahren folgendes kleines script starte:
#! /bin/bash

for i in `seq 101 114`; do
        echo "Lege IPv6-Route in $i an..."
        /usr/sbin/vzctl exec $i /sbin/ip -6 route add ::/0 dev venet0
done
Finde das nur ein wenig unelegant, habe aber keine Möglichkeit gefunden, das Script sinnvoll in dem container starten zu lassen, da die IPv6-Adresse recht spät zugewiesen wird, und ich das somit nicht über das initsystem machen kann.
Gibts keine Möglichkeit die routen im Startvorgang der container anlegen zu können?

Dann habe ich das Problem, dass die conntrack-engine für die VPS ein wenig strubbelig zu sein scheint.
Zum grundsätzlichen Aufbau des Rulesets:
Ich werfe alles anhand des Eingans-Interfaces in verschiedene Chains und filtere dort weiter.
Pakete im Zustand RELATED und ESTABLISHED erlaube ich sehr früh (quasi als erstes, davor habe ich nur eine Chain um den Traffic zu zählen).

Die relevanten Teile meines ip6table-scriptes einmal:
# Accounting
$IPT -N ACCOUNTING
$IPT -A INPUT -j ACCOUNTING
$IPT -A OUTPUT -j ACCOUNTING
$IPT -A FORWARD -j ACCOUNTING

# aufgebaute erlauben
$IPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPT -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

[...]

# Chains fuer die einzelnen If
$IPT -N REDIN
$IPT -A INPUT -i $RED -j REDIN
$IPT -A FORWARD -i $RED -j REDIN

[...]

$IPT -N VPSIN
$IPT -A INPUT -i $VPS -j VPSIN
$IPT -A FORWARD -i $VPS -j VPSIN


Zur weiteren Verdeutlichung:
# ip6tables -vnxL FORWARD
Chain FORWARD (policy DROP 21 packets, 22255 bytes)
    pkts      bytes target     prot opt in     out     source               destination         
 4691726 3882606596 ACCOUNTING  all      *      *       ::/0                 ::/0                
 4655337 3879276130 ACCEPT     all      *      *       ::/0                 ::/0                state RELATED,ESTABLISHED 

[...]

   32764  3046910 VPSIN      all      venet0 *       ::/0                 ::/0 


Das Problem ist nun folgendes:
ip6tables erlaubt auf dem WAN-If ($RED) die Pakete im Zustand RELATED,ESTABLISHED. Problem ist - der Zustand ist auf dem Eingang des If venet0 scheinbar wieder unbekannt und wird dort verworfen. Der Kernel scheint diese als völlig neue Pakete zu behandeln (im Log werden diese als Eingangs- und Ausgangsinterface venet0 gelogt) - ich muss in der Chain für das If venet0 also auch alle Pakete mit der source-ip !$EIGENES_NETZ erlauben. Auch wenn ich in der Chain für venet0 nochmals alle Pakete im Zustand RELATED oder ESTABLISHED erlaube matchen diese nicht darauf; für die conntrack-engine sind es zu diesem Zeitpunkt Pakete im Zustand NEW, auch wenn die in den vorherigen Chains (Eingang auf dem WAN-If) richtig zugeordnet wurden.



Falls von Interesse:
Auf dem Hostsystem läuft der amd64 Debiankernel (2.6.26-2-openvz-amd64 #1 SMP Fri Mar 27 05:10:50 UTC 2009 x86_64 GNU/Linux), alle Gastsysteme sind Debian-lenny Systeme.
Keine Backports oder sonstige Fremdpakete installiert.

Das System selbst ist allerdings schon ein bissel älter (damals aufgesetzt unter woody und linux-vserver, dann "irgendwann" mal zu openvz migriert, da lief aber schon etch), falls das von Interesse sein sollte.
 
Read Message
Read Message
Read Message
Previous Topic: Probleme bei Installation auf Debian Etch
Next Topic: DRINGEND : Wie kann ich meinen Containern Internetzugriff geben für apt-get install ....
Goto Forum:
  


Current Time: Sat Aug 31 19:24:48 GMT 2024

Total time taken to generate the page: 0.06373 seconds