SOURCE ROUTING

Written in

by

Dnes jsem se konecne dostal k source routingu. Nejdriv jsem dostal po icq radu od LOC:


>> LOC So zář 27 13:04:32 2003
nejdriv do souboru /etc/iproute2/rt_tables pridas radek
„100 nax“

a pak source routing zprovoznis pomoci tehle sekvence prikazu.

ip rule add fwmark 1 table nax
ip route add default via (default route to czfree) dev wlanX metric 500 table nax
ip route add default via (route to mistral) dev eth0

iptables -A PREROUTING -i wlanY -t mangle -j MARK –set-mark 1
#pokud nechces delat zalozni iGW, pridej jeste radek
iptables -A PREROUTING -i wlanX ! -d 10.0.0.0/8 -t mangle -j DROP

wlanY je lokalni pokryti, wlanX je spoj s dalsim AP, eth0 je k tobe do vnitrni site. Snad to bude fachat.

Jenze zacaly drsny problemy. Jen jsem tam dal tu routu tak se prestal ozyvat. Ruznymi pokusy jsem zjistil, ze to hned od zacatku zacne tu tabulku brat jako smerodatnou. No nakonec jsem to vyresil pridanim radku kde explicitne rikam default routu pro vnitrni rozsah site a bylo vymalovano. Jenze pak zase nechodily routy do czfreeho 🙁

# Smazne vsechno v tabulce upc
ip route flush table upc
# na pevno routu do vnitrni site aby to pripadne nespadlo
ip route add 10.27.72.0/24 dev eth0 table upc
# default routa s nizkou prioritou do czfreeho
ip route add default via 10.27.4.120 dev wlan1 metric 500 table upc
# pridani routy na muj server
ip route add default via 10.27.72.1 dev eth0 table upc
# upraveni default routy
ip route chg default via 10.27.72.1 dev eth0 table upc src 10.27.72.7

Nicmene kdyz jsem pak nakonec po kompilaci jadra s s podporou flagu dal:
naxrouter:~# iptables -A PREROUTING -i wlan0 -t mangle -j MARK –set-mark 1
iptables v1.2.6a: can’t initialize iptables table `mangle‘: Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.

Moc hezky, co rikate? Na tohle jsme nakonec nasel lek v podobe grepu Documentation adresare ze zdrojaku kernelu a zjistil jsem ze jsem nezaskrtl Packet mangle optionu v IP filteru. No a dal jsem rekompilovat jadro

naxrouter:/usr/src/linux# (make dep && make clean && make bzImage && make modules && make modules_install) &> k.log &

A sel jsem spat.

Tags

Napsat komentář