[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

policy routing



Привет.

Вопрос к тем, кто разбирается в policy routing. Имею такие настройки:

# ip route list
B.B.B.B dev tun0  proto kernel  scope link  src A.A.A.A
C.C.C.C via 192.168.0.1 dev wlan0  metric 10 
192.168.0.0/24 dev wlan0  proto kernel  scope link  src 192.168.0.2 metric 10 
default via B.B.B.B dev tun0 
default via 192.168.0.1 dev wlan0  metric 10

C.C.C.C - хост с запущенным openvpn сервером.
tun0 - openvpn туннель.

# ip addr show tun0
6: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 100
    link/none 
    inet A.A.A.A peer B.B.B.B/32 scope global tun0    

Маршрут default via B.B.B.B dev tun0 добавляется при поднятии туннеля
и с этого момента весь трафик (за исключением на С.С.С.С) идет через
туннель. Хочу создать еще одно исключение для трафика tor, имею:

# ip rule list
0:      from all lookup local 
32765:  from all fwmark 0x2 lookup tor 
32766:  from all lookup main 
32767:  from all lookup default

# ip route list table tor
default via 192.168.0.1 dev wlan0  metric 10

В iptables в таблице mangle имею
-A OUTPUT -m owner --uid-owner debian-tor -j MARK --set-xmark 0x2/0xffffffff

Правило работает:
Chain OUTPUT (policy ACCEPT 52630 packets, 8013K bytes)
num   pkts bytes target  prot opt in     out     source    destination         
1      777  188K MARK    all  --  any    any     anywhere  anywhere     owner UID match debian-tor MARK set 0x2

Однако, пакеты от tor идут все равно в туннель. Что не так?

-- 
Stanislav


Reply to: