[[Datei:Plitc_pppoe_failover.jpg|thumbnail|left|"serverseitiges PPPoE Failover]] == Switch (Partitionierung) mit filter source-port == Der Switch "diethylether" (OBEN / mit der IP: '''.7''') hat per CLI ein [http://whp-hou4.cold.extweb.hp.com/pub/networking/software/Security-Oct2005-59906024-Chap10-Traf-Security-Filts.pdf HP ProCurve - filter source-port] Regelsatz Dieser Regelsatz dient weitgehend zur Trennung der PPPoE Übertragung mit dem restlichen Netzwerk * Port 1-4 dürfen nur mit Trk2 / Trk3 kommunizieren * > Port 1 ist für das PPPoE DSL Modem * > Port 2 (Notfall) Ratbert (generell ausgeschaltet) * > Port 3 (für Debugzwecke zum Port-Mirroring) * > Port 4 (Fritzbox für VoIP zum Asterisk LXC) Der zweite Teil der Segmentierung sie wie folgt aus: * > Port 5-8 (ist der Trunk von Trk2 & Trk3) * > Trk2 ist freenas/storage server * > Trk3 ist flatbert server * (einige ) Port 9-20 und Trk1 (Port 21-24) dient der Kommunikation mit dem Switch (UNTEN / mit der IP: '''.6''') der das eigentliche HQ, über das Patchfeld, versorgt (untagged als auch VLAN 100-105) == PPPoE Failover Schema == * Der Flatbert Server hat den LXC Container: '''dropbert1''' mit der IP: '''.91''' (primärer PPPoE Dialin/Routing Container) * Der FreeNAS/Storage Server hat die JAIL: '''dropbert2''' mit der IP: '''.92''' (backup PPPoE Dialin/Routing Container) * Da es sich bei Flatbert um einen Linux (Debian) Server und FreeNAS/Storage um einen FreeBSD Server handelt, wird zur gegenseitigen "failover" Verständigung, innerhalb der Container, [http://www.pureftpd.org/project/ucarp ucarp] verwendet == Funktionen der Container == * PPPoE Dialin ([https://wiki.debian.org/PPPoE Debian]/[https://www.freebsd.org/doc/handbook/pppoe.html FreeBSD]) * Routing ([https://www.debian.org/doc/manuals/network-administrator/ch-tcpip.html Debian]/[https://www.freebsd.org/doc/handbook/network-routing.html FreeBSD]) * NAT – [https://wiki.debian.org/iptables iptables] unter Debian / [https://www.freebsd.org/doc/handbook/firewalls-ipfw.html ipfw] unter FreeBSD == HOST System Einrichtung == === Flatbert (Linux) === System auf den aktuellen Stand halten apt-get autoclean; apt-get clean; apt-get update; apt-get upgrade Umgebungs-/Debugtools installieren apt-get install git iptables tcpdump sockstat iputils-ping Kernelmodule laden vi /etc/modules ### pppoe routing // ### pppoe ip_tables ip6_tables ip6t_MASQUERADE ## ("pkttype" packet type match support) filter multicast xt_pkttype tun ### // pppoe routing ### modprobe pppoe ip_tables ip6_tables ip6t_MASQUERADE xt_pkttype tun Container erstellen lxc-fancy create Container stoppen und LXC-Container-Config anpassen (für pppoe kernel support) lxc-stop -n dropbert1 vi /var/lib/lxc/dropbert1/config #// ppp/pppoe support lxc.cgroup.devices.allow = c 108:0 rwm lxc.mount.entry = /dev/ppp dev/ppp none bind,optional,create=file #// lxc-to-go bridge 1 lxc.network.link=vswitch0 WICHTIG: durch das Flatbert Netzwerkschema muss! vswitch1 nach vswitch0 umgeschrieben werden, damit „dropbert1“ direkt über die erste Bridge angebunden wird und nicht an der zweiten Bridge, die ProxyARP/ProxyNDP verwendet! === FreeNAS/Storage (FreeBSD) === == Container Einrichtung == === LXC: dropbert1 === === JAIL: dropbert2 === #