Ok... sa fac o adunare a discutiilor de pana acum : Salutare. Am o mica problema. Se da un calculator cu 3 placi de retea; doua din ele se leaaga in bridge si rezulta interfata br0 cu o adresa IP reala; mai avem interfata eth2 ce are in spate o subclasa de retele IP si, ar trebui sa mai aiba, si o subclasa de adrese nerutabile ce au acces la exterior prin NAT.
Bridge-ul are intr-o parte legatura la internet si in cealalta parte reteaua cu adrese reale din alta clasa decat cele route-ate de eth2. Din pacate nu sunt prea bun la ASCII art sa incerc o reprezentare. Masina in cauza route-eaza foarte bine clasa reala din spatele interfetei eth2, dar nu vrea sa faca NAT de nici un fel . Daca opresc bridge-ul si folosesc ca iesire direct interfata fizica, NAT-ul merge fara probleme. Stie cineva vreo rezolvare ? Sau pur si simplu este o limitare data de faptul ca vreau sa folosesc o interfata bridge pentru iesire ? Cam asa arata setarile. route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 194.102.58.0 0.0.0.0 255.255.255.0 U 0 0 0 br0 10.10.10.0 0.0.0.0 255.255.255.0 U 0 0 0 eth2 85.120.46.0 0.0.0.0 255.255.255.0 U 0 0 0 eth2 0.0.0.0 194.102.58.1 0.0.0.0 UG 0 0 0 br0 Regula de MASQ arata cam asa : /sbin/iptables -t nat -A POSTROUTING -j MASQUERADE -s 10.10.10.0/24 pentur ip ro , output-ul arata asa : 194.102.58.0/24 dev br0 proto kernel scope link src 194.102.58.128 10.10.10.0/24 dev eth2 proto kernel scope link src 10.10.10.101 85.120.46.0/24 dev eth2 proto kernel scope link src 85.120.46.1 default via 194.102.58.1 dev br0 daca nu mai folosesc bridge , si folosesc interfata externa a gateway-ului pentru MASQ, iar merge ok . Alte setari relevante eu zic ca nu sunt. iptables - L -n -v -t nat : Chain OUTPUT (policy ACCEPT 3225 packets, 194K bytes) pkts bytes target prot opt in out source destination Chain POSTROUTING (policy ACCEPT 7052K packets, 645M bytes) pkts bytes target prot opt in out source destination 9822 1664K MASQUERADE all -- * * 10.10.10.0/24 0.0.0.0/0 Chain PREROUTING (policy ACCEPT 14M packets, 1835M bytes) pkts bytes target prot opt in out source destination Ceva ciudat; daca dau tcpdump, si dau ping, apar doar pachetele echo-request cu adresa cu 10.10.10.x; nu apar cu sursa schimbata. Am mai facut un test : iptables -t nat -D POSTROUTING -j LOG --log-tcp-options --log-ip-options --log-prefix 'test-nat ' -s 10.10.10.0/24 Si aici nu apar pachetele. Cel putin nu cele care ar trebui sa intre pe interfata eth2 ( cu ip-ul 10.10.10.101). Apar cateva pachete de broadcast care vin pe interfata bridge. Cele doua interfete sunt in aceleasi switchuri. Se poate cumva ca pachetele sa nu ajunga in POSTROUTING ? Cel putin schimbarea de sursa vad ca nu se face. cat /proc/sys/net/ipv4/ip_forward 1 Oricum, dupa cum am mai zis.. masinuta in cauza ruteaza foarte bine clasa publica de ip-uri (cea cu 85. ). Problema este doar la NAT. Multumesc, Vlad On Thu, 30 Aug 2007, Tarhon-Onu Victor wrote: > On Thu, 30 Aug 2007, Vlad Constantinescu wrote: > > > Si da... am verificat daca am forwarding . > > Si ai? Ca noi in continuare sintem de parere ca nu. ++cum ai > verificat? iptables -t nat -L -n -v ai dat pe lista? > Nu. Nimic nu ai facut. > > -- This message was scanned for spam and viruses by BitDefender. For more information please visit http://linux.bitdefender.com/ _______________________________________________ RLUG mailing list RLUG@lists.lug.ro http://lists.lug.ro/mailman/listinfo/rlug