Razdvajanje ruta kod linux hipervizora sa više mrežnih kartica
Centos 6.5, Centos 7
Ovo je moguće zahvaljujući alatima iproute2 projekta.
Registrovanje dodatnih tabela rutiranja
Tabele ruta se definišu u fajlu
/etc/iproute2/rt_tables
dodavanjem zapisa u skeciju # local (mada ovo nije važno)
# # reserved values # 255 local 254 main 253 default 0 unspec # # local # #1 inr.ruhep # # dodajem dve nove rute, jednu za default, lokalnu, mrežu (T0) drugu za dodatnu, javnu, mrežu (T1) # 252 T0 251 T1
Registrovanje ruta
Nakon dodavanja ruting tabela, sledi registrovanje zapisa u njima, i vezivanje ruting tabela za odgovarajuće mrežne adaptere.
Napomena: Kako se radi o hipervizoru, fizički adapteri su zamenjeni “mostovima” (bridge), koji se ponašaju kao mini ruteri između hipervizora i gostujućih sistema.
Da bi se ove komande izvršavale pri podizanju hipervizora ubačene su u rc.local skriptu.
/etc/rc.d/rc.local
U konkretnom slučaju :
- T0 rutira br0 most, na lokalnoj mreži 192.168.0.0/24, izlazi kroz GW 192.168.0.254
- T1 rutira br1 most, na javnoj mreži 178.254.155.0/29 (imamo 8 javnih IP adresa), izlazi kroz GW 178.154.155.57
# Registrovanje T0/T1 ruta ip route add 192.168.0.0/24 dev br0 src 192.168.0.2 table T0 ip route add default via 192.168.0.254 dev br0 table T0 ip route add 178.254.155.0/29 dev br1 src 178.254.155.59 table T1 ip route add default via 178.254.155.57 dev br1 table T1 # Vezivanje interfejsa za ruting tabele ip rule add from 192.168.0.2/32 table T0 ip rule add to 192.168.0.2/32 table T0 ip rule add from 178.254.155.59/32 table T1 ip rula add to 178.254.155.59/32 table T1