Dvě síťové karty, každá s jinou IP

creco

Dvě síťové karty, každá s jinou IP
« kdy: 27. 10. 2011, 13:35:33 »
Resim tu problem, ted mam dva servery a jeden budu rusit. Na kazdem serveru mam verejnou IP adresu ale kazda je z jineho bloku IP adres. A ted potrebuju na jednom serveru nastavit dve IP adresy kde kazda ma jinou branu a masku. Nejake napady jak to nastavit? Pouzivam ubuntu
« Poslední změna: 27. 10. 2011, 17:14:10 od Petr Krčmář »


smoofy

  • *****
  • 1 056
    • Zobrazit profil
    • E-mail
Proste vytvor alias k te sitovce s novym ipeckem a maskou pokud jsou obe site na stejne fyzickem mediu.Pokud to planujes z jakehokoliv duvodu resit dvema sitovkama tak je to jeste jednodussi. Proste si nastavis kazdou sit zvlast.

creco

Jop, to asi bude fungovat... a co gateway? kazda IP ma vlastni branu

smoofy

  • *****
  • 1 056
    • Zobrazit profil
    • E-mail
ma vlastni branu pro vlastni sit, tu tam musis mit samozrejme nastavenou pro kazdou sit zvlast, hlavne bacha at se ti nevytvorej dve defaultni brany coz se mi stavalo v linuxu celkem casto, jedinym nasledkem pak je, ze nefunguje ani jedna :) defaultni brana by mela byt uplne jedno kde bude, jestli ji nastavis na interface 1 ci dva, da se jeste nastavit bonding ze se ti to posila pres jednu a pokud ma vypadek vyuzije se druha nicmene pokud to mas strceny do jednoho switche tak to nema moc smysl a to bych pak spise resil jedinou sitovkou s aliasem, cims si usetris spoustu trapeni, jeden sitovej port na masine i switchi a zjednodusi se ti nastaveti routovani

creco

smoofy presne mi mluvis z duse... to je to co potrebuju... jen otazka jak to nastavim? prave ze vim ze si nesmim nastavit dve defaultni brany. Vim ze musim upravit vahy routovani ale priznam se ze nevim jak. Nema nekdo nejakou ukazku konfigurace?


creco

Musim mit dve sitovky protoze jedna IP bere konektivitu pres CD-telematika a druha pres slonepark

Ladislav Kepšta

Zdravim,

to co hladate sa vola "policy base routing". Mali by ste si vystacit v nastrojom iproute2.

LKe

smoofy

  • *****
  • 1 056
    • Zobrazit profil
    • E-mail
no tak pak to samozrejme smysl dava, brany tam musis mit minimalne tri, pro kazdou sit zvlast a pak jednu defaultni. Tu bych nasmeroval na kvalitnejsi pripojeni a pripadne nastavil to presmerovani v pripade vypadku. Idealne vytvor z tech dvou pripojeni most se dvema ipeckama at se to chova jako jedna sitovka a mas po starostech.

neldor

Smoofy, s veskerym respektem te musim upozornit, ze placas nesmysly. Je uplne jedno, zda ma dve sitovky, jednu+alias, nebo 2 sitovky+bridge+2 aliasy. Tri gatewaye je uz uplny nesmysl. Tady nejde o pripojeni do dvou ruznych siti, ale o pripojeni do internetu pres dva ruzne ISP, se dvema nezavislyma rozhranima a IP adresama.

Takze Creco potrebuje nastavit sitovani tak, aby odpovedi na vsechny packety odchazely pres to rozhrani, z jakeho prisly ty puvodni packety, a samozrejeme aby odchazely s adresou toho rozhrani.

Creco, nastuduj si neco o ohledne iproute2, potazmo prikazu ip, nebo taky "linux advanced routing", resp. uz zminovany "policy based routing", viz Google. Dobry zacatek je treba tady: http://linux-ip.net/html/adv-multi-internet.html

smoofy

  • *****
  • 1 056
    • Zobrazit profil
    • E-mail
Mas recht. Smysl to nedava vubec :). Myslel jsem routy a ne brany, nicmene melo by pomoci neco v tomto smyslu:

http://www.adamsinfo.com/extending-tc-and-iproute2-linux-routing-split-access-multiple-uplinks-multiple-isps-iptables-masquerading/

scotyj

0) nakonfigurovane siete (/etc/network/interfaces) bez nastavenia gw
1) nainstalovany balik iproute
2) vytvorenie tabuliek (!!! 1x)
# echo -e "#rt tabulky pre 2 siete a defgw\n200\tdefgw\n201\tsiet1\n202\tsiet2" >> /etc/iproute2/rt_tables
3) vytvorit si skript alebo pouzit /etc/rc.local alebo v /etc/network/interfaces nastavit up/down prikazy zabezpecujuce

a) nastavenie jednej brany pre tabulku siet1
# ip route add default via $gw_on_net1 dev $siet1_int table siet1
b) nastavenie druhej brany pre tabulku siet2
# ip route add default via $gw_on_net2 dev $siet2_int table siet2
c) nastavenie jednej z bran ako defgw (vyuzije s ak nebude vyhovovat ziadnej s nasledne popisanej ip rule)
# ip route add default via $gw_on_net1 dev $int_on_net1 table defgw
d) zistenie poslednej rule v ip route
# ip rule show|sort -nr|head -1|cut -f1 -d':' - do skriptu napr prefnum=`ip rule show|sort -nr|head -1|cut -f1 -d':'`
e) nastavenie rules pre siet1 kde $prefnum je cislo zistene v kroku "d" $srcip1 je adresa interface-u! alebo podla druhej moznosti podla odchadzajuceho interface
 1. moznost podla interface IP pref
  # ip rule add from $srcip1 table siet1 pref $(($prefnum+1))
 2. moznost
  # ip rule add oif $siet1_int table siet1 pref $(($prefnum+1))
f) to iste ako v kroku "e" aj pre siet2 teda napr.
# ip rule add from $srcip2 table siet2 pref $(($prefnum+2))
g) pridanie default rule ak nevyhovie ani podmienke s kroku e, alebo f
#ip rule add table defgw pref $(($prefnum+3))
h) vycistenie route cache
# ip route flush cache

------------------
vysledok je existencia default (zobrazujucej sa cez prikaz route) tabulky ktorou sa prejde, nasledne ak v nej nieje nastavena gw (krok 0) tak pokracuje v rules (ip rules show) a v tych ak vyhovuje podmienke prveho interface tak vyberie podla tabulky siet1 prvy gw ak druhy int tak tabulka siet2 a ak ani jednej tak posledny krok v rules odkaze na tabulku defgw