Hi,
Adott a következő szitu:
--- 192.168.2.0/24 ------------ eth0:0
\
--- 192.168.1.0/24 ------------ eth0 (192.168.1.252, 192.168.2.252)
[szerver]
/ |
/ eth1 (195.xxx.xxx.xxx) ISP1
/
ISP2 router (192.168.1.111)
Jelenleg az 1.0-ás hálózaton mindenki az 1.111-et kapja gw-ként, ami egy router. Szeretném átterelni a forgalmat a szerveren keresztül (transparent proxy stb. okok miatt). A 2.0-át pedig az eth1-en.
Ehhez kellene valami ötlet.
Köszönöm!
- 2434 megtekintés
Hozzászólások
tehát a 2.0 előbb az eth0-án, majd az eth1-en megy át?
ha ezt tisztán leírod [vigyázz, ne annyira szubjektíven, inkább általánosan, mert close-olják a kérdést] ide:
http://serverfault.com/questions/ask
szépen angolul, akkor szerintem előbb megkapod a választ, mint itt.
- A hozzászóláshoz be kell jelentkezni
"tehát a 2.0 előbb az eth0-án, majd az eth1-en megy át"
Igen. Pontosabban az eth0:0 -án. Ennek kellene továbbmenni az eth1 felé, de úgy, h közben át van kergetve a squid-on.
- A hozzászóláshoz be kell jelentkezni
Szerintem pontatlan az ábra. Legalábbis nagyon alap tudással azt gondolnám, hogy a szerverbe minimum három interface kell.
nem kitüntetett gép nem kitüntetett gép
(192.168.1.x) (192.168.2.x)
| +---------------------------------------------------+ |
| | | |
switch 1 (192.168.1.0/24) --- | eth0 (192.168.1.252) (192.168.2.252) eth1 | --- switch 2 (192.168.2.0/24)
| | |
| | (195.xxx.xxx.xxx) eth2 | === ISP1 eszköz
ISP2 router (192.168.1.111) | |
+---------------------------------------------------+
Jelenleg az 1.0-ás hálózaton mindenki az 1.111-et kapja gw-ként, ami egy router. Szeretném átterelni a forgalmat a szerveren keresztül (transparent proxy stb. okok miatt).
Az 1.0-ás hálózat minden gépének a 192.168.1.252-t kell leosztani default gw-ként (dhcp-vel vagy kézzel) az 1.111 helyett. A szerveren az 1.0 felől érkező forgalmat az ISP2 router felé kell route-olni, de közbe kell ékelni a transparent proxy-t iptables-zel. (Meg persze az IP forward-ot.)
(Mindenesetre ezt egy 192.168.1.x gép könnyen felülbírálhatja és route-olhat közvetlenül a 192.168.1.111 felé. Mivel az 1.x és az 1.111 azonos switch-ben vannak, ezt legfeljebb úgy tudod megakadályozni, ha ebtables-zel szűrsz forrás MAC-ra az 1.111-en (csak a szerver felől fogadjon), vagy iptables-zel forrás IP-re (csak a szerver felől fogadjon, de akkor a szerveren még SNAT-ot is kell csinálnod). Ha az ISP2 router egy sima fekete doboz "kliens MAC szűrés" nélkül, akkor nem tudod megakadályozni, hogy az 1.x közvetlenül azon keresztül route-oljon. Ekkor a szerverbe kell egy negyedik eth is, amivel pont azt csinálod, mint: lásd lentebb.)
A 2.0-át pedig az [ISP1 felé].
IP forward + masquerade a szerveren eth1->eth2 irányban.
- A hozzászóláshoz be kell jelentkezni
"Szerintem pontatlan az ábra. Legalábbis nagyon alap tudással azt gondolnám, hogy a szerverbe minimum három interface kell."
Elnézést, tényleg pontatlan.
A 192.168.2.0 az eth0:0-ra jön.
"Az 1.0-ás hálózat minden gépének a 192.168.1.252-t kell leosztani default gw-ként (dhcp-vel vagy kézzel) az 1.111 helyett. A szerveren az 1.0 felől érkező forgalmat az ISP2 router felé kell route-olni, de közbe kell ékelni a transparent proxy-t iptables-zel. (Meg persze az IP forward-ot.)"
A kiosztás és a transzparens proxy meg is volna. A route-olással vannak bajaim. Két default route kellene attól függően, h honnan érkezik a kérés illetve még a squid is játszik ebben a felállásban.
"Mindenesetre ezt egy 192.168.1.x gép könnyen felülbírálhatja és route-olhat közvetlenül a 192.168.1.111 felé. Mivel az 1.x és az 1.111 azonos switch-ben vannak, ezt legfeljebb úgy tudod megakadályozni, ha ebtables-zel szűrsz forrás MAC-ra az 1.111-en (csak a szerver felől fogadjon), vagy iptables-zel forrás IP-re (csak a szerver felől fogadjon, de akkor a szerveren még SNAT-ot is kell csinálnod). Ha az ISP2 router egy sima fekete doboz "kliens MAC szűrés" nélkül, akkor nem tudod megakadályozni, hogy az 1.x közvetlenül azon keresztül route-oljon. Ekkor a szerverbe kell egy negyedik eth is, amivel pont azt csinálod, mint: lásd lentebb.)"
Igen ez általam is ismert hiányosság. A klienseken nincs joga a usereknek ip címet állítani. Nyilván ettől még ezt meg lehet kerülni, de nekem egyelőre elég lenne, ha így működne.
- A hozzászóláshoz be kell jelentkezni
Két default route kellene
A fő probléma felett természetesen elsiklottam. Erre viszont már könnyű volt keresni. Policy routing. Több routing tábla kell.
http://kindlund.wordpress.com/2007/11/19/configuring-multiple-default-r…
http://www.rjsystems.nl/en/2100-adv-routing.php
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
Hi,
Sehogy sem akar működni.
/etc/network/interfaces
auto eth0
iface eth0 inet static
address 192.168.1.252
netmask 255.255.255.0
broadcast 192.168.1.255
#gateway 192.168.1.111
auto eth1
iface eth1 inet static
address 195.xxx.xxx.202
netmask 255.255.255.248
gateway 195.xxx.xxx.206
auto eth0:0
iface eth0:0 inet static
address 192.168.2.252
netmask 255.255.255.0
broadcast 192.168.2.255
#gateway 192.168.1.111
root@dellserver:/etc/network# ip route
195.xxx.xxx.200/29 dev eth1 proto kernel scope link src 195.xxx.xxx.202
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.252
default via 195.xxx.xxx.206 dev eth1 metric 100
/etc/iproute2/rt_tables
#
# reserved values
#
255 local
254 main
253 default
0 unspec
#
# local
#
#1 inr.ruhep
1 admin
Majd kiadom ezt:
#!/bin/bash
/sbin/ip route add 192.168.1.0/24 dev eth0 src 192.168.1.252 table admin
/sbin/ip route add default via 192.168.1.111 dev eth0 table admin
/sbin/ip rule add from 192.168.1.252/24 dev eth0 table admin
/sbin/ip rule add to 192.168.1.252/24 dev eth0 table admin
/sbin/ip route flush cache
Erre pedig semmi válasz :(.
root@dellserver:~/bin# ping -I eth0 192.168.1.252 hup.hu
PING hup.hu (195.228.252.138) from 192.168.1.252 eth0: 56(124) bytes of data.
Köszönöm!
- A hozzászóláshoz be kell jelentkezni
a hup.hu nem szokott valaszolni icmp-re. index.hu?
- A hozzászóláshoz be kell jelentkezni
index.hu sem megy sajnos. (A hup.hu tényleg nem válaszol icmp-re :o )
root@dellserver:~# ping -I eth0 index.hu
PING index.hu (217.20.130.97) from 192.168.1.252 eth0: 56(84) bytes of data.
From dellserver.xxxx.hu (192.168.1.252) icmp_seq=1 Destination Host Unreachable
- A hozzászóláshoz be kell jelentkezni
Ha csak egy routingja van, akkor megy? Vagyis, ha ellovod az egyik labat?
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
Igen, simán. Nem kell ellőni a másik táblát.
root@dellserver:~/bin# ping index.hu
PING index.hu (217.20.130.97) 56(84) bytes of data.
64 bytes from sportgeza.hu (217.20.130.97): icmp_req=1 ttl=56 time=18.6 ms
- A hozzászóláshoz be kell jelentkezni
így:
ping -I eth0 192.168.1.252 index.hu
nekem se menne.
így próbáld meg:
ping -I 192.168.1.252 index.hu
- A hozzászóláshoz be kell jelentkezni
Sajnos így sem :(. Az 1.111 egy router, de hát ettől még menni kellene. (Ha csak egy tábla van egy default route-al és az a 1.111, akkor megy.)
- A hozzászóláshoz be kell jelentkezni
ip rule show
ip route show
ip route shot table admin
kimenetit légyszi, úgy áttekinthetőbb.
- A hozzászóláshoz be kell jelentkezni
Igen, itt jön.
root@dellserver:~/bin# ip rule show
0: from all lookup local
32764: from 192.168.1.0/24 iif eth0 lookup admin
32765: from 192.168.1.252/24 iif eth0 lookup admin
32766: from all lookup main
32767: from all lookup default
root@dellserver:~/bin# ip route show
195.xxx.xxx.200/29 dev eth1 proto kernel scope link src 195.xxx.xxx.202
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.252
default via 195.xxx.xxx.206 dev eth1 metric 100
root@dellserver:~/bin# ip route show table admin
192.168.1.0/24 dev eth0 scope link src 192.168.1.252
default via 192.168.1.111 dev eth0
- A hozzászóláshoz be kell jelentkezni
ez:
/sbin/ip rule add to 192.168.1.252/24 dev eth0 table admin
mintha hiányozna az eredeti koncepció szerinti táblából.
másrészt szerintem az a 'dev eth0' fölösleges korlátok közé szorítja szegény számítógépet, az szerintem oda nem kell.
- A hozzászóláshoz be kell jelentkezni
"/sbin/ip rule add to 192.168.1.252/24 dev eth0 table admin"
Jogos. Hozzáadtam, de így sem megy :(.
Úgy tűnik oda kell mennem, hogy értsem mi történik.
- A hozzászóláshoz be kell jelentkezni
"másrészt szerintem az a 'dev eth0' fölösleges korlátok közé szorítja szegény számítógépet, az szerintem oda nem kell."
- A hozzászóláshoz be kell jelentkezni
Ahhhh. Éreztem, hogy közel vagyunk. Működik szépen :D!!
#!/bin/bash
/sbin/ip route add 192.168.1.0/24 dev eth0 src 192.168.1.252 table admin
/sbin/ip route add default via 192.168.1.111 dev eth0 table admin
/sbin/ip rule add from 192.168.1.252/24 table admin
/sbin/ip rule add to 192.168.1.252/24 table admin
/sbin/ip route flush cache
Köszönöm mindenkinek! (vl kollégának különösen)
- A hozzászóláshoz be kell jelentkezni
Hasonlo problemam mar volt, meg tudtam oldani bar nagyon gusztustalanul.
Akkor en is belefutottam hogy ket default route nem megoldas.
En akkor Openvz-vel oldottam meg. A ket virtualis gepnek, mas volt a cime (pl 1.111, 2.111), es DHCP-vel azt a gw-t adtam meg amit megerdemelt.
Tudom hogy csunya megoldas, de akkor a celnak megfelelt.
- A hozzászóláshoz be kell jelentkezni