Kterak tedy propojit dva stroje (rekneme pc1 a pc2) pomoci virtualniho switche? Takto:
Na obou strojich je treba udelat toto:
1) Instalovat VDE
$ sudo apt-get install vde22) Vytvorit VDE switch
a) Pokud nepotrebujeme lokalni iface pripojeny do VDE, pak muzeme spustit pod userem:
$ vde_switch -daemon -sock /tmp/vde.tpl -mgmt /tmp/vde.mgmtb) Pokud potrebujeme ke switchi pripojit i hosta, pak je treba vytvorit spolu se switchem TAP iface (to uz vyzaduje root permise):
$ sudo vde_switch -tap tap0 -daemon -sock /tmp/vde.tpl -mgmt /tmp/vde.mgmt
3) Pripojit k VDE switchi je mozne takto:TAP iface je dobre pak i oadresovat:$sudo ifconfig tap0 192.168.254.1/24
Pokud chceme se switchem pak pracovat jako user, je vhodne upravit prava:
$ sudo chmod 777 /tmp/vde.mgmt
$ sudo chmod -R 777 /tmp/vde.tpl/
$ unixterm /tmp/vde.mgmt4) Ve VirtualBoxu pripojit konkretni sitovy adapter konkretni VM k VDE switchi
prikazem port/allprint pak zobrazime pripojene porty - pokud jsme nevytvorili TAP iface, tak bude vypis prazdny, pokud jsme ho vytvorili, tak bude vypadat zhruba takto:
vde$ port/allprint
0000 DATA END WITH '.'
Port 0001 untagged_vlan=0000 ACTIVE - Unnamed Allocatable
Current User: NONE Access Control: (User: NONE - Group: NONE)
IN: pkts 46 bytes 6351
OUT: pkts 0 bytes 0
-- endpoint ID 0007 module tuntap : tap0
.
1000 Success
!!! Jmeno VDE adapteru se musi shodovat sparametrem "-sock" z prikazu "vde_switch" v bodu 2
5) Zkontrolovat, zda se opravdu VM pripojila ke switchi:
vde$ port/allprintPokud jsme na obou strojich vytvorili VDE switch, tak je jeste nutne je propojit mezi sebou, aby VM v obou VirtualBoxech dokazali mezi sebou komunikovat (logicky, ze jo :-) To muzeme udelat nekolika zpusoby, ja ukazu dva:
0000 DATA END WITH '.'
Port 0001 untagged_vlan=0000 ACTIVE - Unnamed Allocatable
Current User: NONE Access Control: (User: NONE - Group: NONE)
IN: pkts 82 bytes 11351
OUT: pkts 0 bytes 0
-- endpoint ID 0007 module tuntap : tap0
Port 0002 untagged_vlan=0000 ACTIVE - Unnamed Allocatable
Current User: user Access Control: (User: NONE - Group: NONE)
IN: pkts 0 bytes 0
OUT: pkts 0 bytes 0
-- endpoint ID 0008 module unix prog : VirtualBOX user=user PID=10493
.
1000 Success
a) pomoci SSH
Na jednom stroji (prip. na obou) je treba rozjet SSH server (defaultne ma Ubuntu instalovanyho jen klienta)b) pomoci netcat
$ sudo apt-get install openssh-serverNa druhym stroji pak pustime tento prikaz:
$ dpipe vde_plug /tmp/vde.tpl = ssh user@pc2 vde_plug /tmp/vde.tplNevyhodu to ma jasnou - heslo je nutny napsat ruco fuco, naopak vyhoda je, ze komunikace tese sifrovane. Nevyhody je mozny se zbavit nastavenim SSH certifikatu, ale tim se tady nehodlam zabyvat :)
Na jednom stroji pustime:
$ dpipe vde_plug /tmp/vde.tpl = nc -l -u 8000Na druhym stroji pustime:
$ dpipe vde_plug /tmp/vde.tpl = nc -u -p 8000 pc1 8000I tady je nevyhoda jasna - data tecou nesifrovane, na druhou stranu vyhoda spociva v tom, ze neni potreba zadny heslo, takze se to da krasne naskriptovat. Taky u tohoto zpusobu zpojeni VDE switchu je mozny se nevyhody zbavit, napr. sestavenim IPSec tunelu (ani tim se tady nebudu zabyvat :)
Tak, jako rychly navod by to mohlo stacit, neni-liz pravda?
Žádné komentáře:
Okomentovat
Mazat komentáře nehodlám, výjimky však tvoří vulgární a off-topic komentáře!