Installation VLAN

In der Cloud von Cloudsigma bezahlt man nur für Outgoing Traffic. Aber Achtung! Traffic von Cloud <-> Cloud Server wird verrechnet!

Da ich einigen Traffic zwischen MySQL, Webserver etc. hin- und herschicke, könnten hier viele Kosten entstehen, die durch ein VLAN vermieden werden könnten: Wer nämlich den Traffic über das Private Netz schickt, muss den Traffic nicht bezahlen.

Ein weiterer Vorteil ist, wenn ein Server nur als DB Server benutzt wird und nur mit den Cloud Servern verbunden ist, reicht eine VLAN Connection. Für diesen Server brauch ich dann keine Statische Adresse 🙂

Also als erstes muss die Subscription bei Cloudsigma für ein VLAN gelöst werden. Danach fügt man das erstellte VLAN bei den gewünschten Servern unter Network -> Private Network hinzu. Wenn man die MAC Adresse leer lässt, wird diese automatisch beim Start generiert. Bei der privaten Netzwerkkarte Virtio auswählen.

Wenn jetzt der Server gestartet wird, erscheint die zweite Netzwerkkarte beim Startup:

# dmesg | grep -is net
vtnet0: <VirtIO Networking Adapter> on virtio_pci4
vtnet0: Ethernet address: xx:xx:xx:xx:xx:xx
virtio_pci5: <VirtIO PCI Network adapter> port 0xc140-0xc15f mem 0xfebf6000-0xfebf6fff irq 11 at device 8.0 on pci0
vtnet1: <VirtIO Networking Adapter> on virtio_pci5
vtnet1: Ethernet address: xx:xx:xx:xx:xx:xx

ifconfig sieht wie folgt aus:

# ifconfig
vtnet1: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=80028<VLAN_MTU,JUMBO_MTU,LINKSTATE>
        ether xx:xx:xx:xx:xx:xx
        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
        media: Ethernet 1000baseT <full-duplex>
        status: active

VLAN Konfigurieren

Die Konfig basiert auf diesem Artikel. Jedoch hat es bei mir mit einem geklonten Interface nicht funktioniert. Daher mache ich es einfach so ohne Klon:

per ifconfig

VLAN konfigurieren:

# ifconfig {interface} {ip-address} netmask {subnet-mask} vlan {vlan-id} vlandev {physical-interface}

Also:

# ifconfig vtnet1 10.0.0.1 netmask 255.255.255.0 vlan 1 vlandev vtnet1

Beim zweiten Server wäre die Config dann

# ifconfig vtnet1 10.0.0.2 netmask 255.255.255.0 vlan 1 vlandev vtnet1

etc.

Nun sieht die Konfiguration so aus:

vtnet1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=80028<VLAN_MTU,JUMBO_MTU,LINKSTATE>
        ether xx:xx:xx:xx:xx:xx
        inet 10.0.0.3 netmask 0xffffff00 broadcast 10.0.0.255
        inet6 fe80::bce0:cdff:febb:2611%vtnet1 prefixlen 64 scopeid 0x3
        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
        media: Ethernet 1000baseT <full-duplex>
        status: active

Fixe VLAN Connection beim Startup

# vi /etc/rc.conf 

Folgendes hinzufügen

ifconfig_{interface}="inet x.x.x.x netmask y.y.y.y vlan {vlan-id} vlandev {physical-interface}"

Ergibt:

ifconfig_vtnet1="inet 10.0.0.3 netmask 255.255.255.0 vlan 1 vlandev vtnet1"

VLAN Hosts per Hostname erreichen

Damit man die Server im Netz einfach per Hostname erreichen kann, einfach /etc/hosts entsprechend anpassen. Muss man natürlich pro Server machen.

vi /etc/hosts
# My VLAN Network
10.0.0.1               corky
10.0.0.2               violet
10.0.0.3               tesla
10.0.0.4               patsy

Wäre dann z.B. 10.0.0.3 der MySQL Server, könnte man nun einfach per tesla über das VLAN zu MySQL connecten. Das würde dann so aussehen:

mysql -umyusername -pmypass -htesla

Firewall Konfiguration

Damit man über das VLAN uneingeschränkt zu den Servern connection kann, muss die Firewall entsprechend eingestellt sein:

#lokales netz
table 2 flush
table 2 add 10.0.0.0/24
# Local VLAN network
add 1060 allow         ip from me to table(2) via vtnet1
add 1065 allow         ip from table(2) to me via vtnet1

Quellenangaben


Flattr this!

  • *

    Du kannst diese HTML tags verwenden: <a> <abbr> <acronym> <b> <blockquote> <cite> <code> <del> <em> <i> <q> <s> <strike> <strong>

  • Kommentar-Feed für diesen Beitrag
nach oben