Gentoo Archives: gentoo-user-ru

From: "Anton S. Ustyuzhanin" <kit@×××××××××.kz>
To: gentoo-user-ru@l.g.o
Subject: Re: [gentoo-user-ru] 1 комп, 2 соединения с интернетом
Date: Tue, 02 Dec 2008 05:41:51
Message-Id: 4934CA93.5000105@miras.edu.kz
In Reply to: Re: [gentoo-user-ru] 1 комп, 2 соединения с интернетом by "Anton S. Ustyuzhanin"
1 Еще одно наблюдение:
2 если добавить маршрут в табличку main:
3 94.100.176.20 via 10.1.0.1 dev tun0, то и kit и babaz будут ходить на
4 94.100.176.20 через tun0, и все прекрасно работает.
5 А вот когда делаешь те действия что я написал в начальном письме - у
6 kit'а пропадает инет вообще. А сниффер вот что показывает:
7 -----------------------------------------
8 tshark -i tun0
9 Running as user "root" and group "root". This could be dangerous.
10 Capturing on tun0
11 0.000000 10.1.0.2 -> 94.100.176.20 TCP 48512 > smtp [SYN] Seq=0
12 Win=5840 Len=0 MSS=1460 TSV=47895326 TSER=0 WS=7
13 0.091734 94.100.176.20 -> 10.1.0.2 TCP smtp > 48512 [SYN, ACK]
14 Seq=0 Ack=1 Win=32768 Len=0 MSS=1410 WS=4 TSV=2733024143 TSER=47895326
15 2.999501 10.1.0.2 -> 94.100.176.20 TCP 48512 > smtp [SYN] Seq=0
16 Win=5840 Len=0 MSS=1460 TSV=47896226 TSER=0 WS=7
17 3.090609 94.100.176.20 -> 10.1.0.2 TCP smtp > 48512 [SYN, ACK]
18 Seq=0 Ack=1 Win=32768 Len=0 MSS=1410 WS=4 TSV=2733024143 TSER=47896226
19 6.090273 94.100.176.20 -> 10.1.0.2 TCP smtp > 48512 [SYN, ACK]
20 Seq=0 Ack=1 Win=32768 Len=0 MSS=1410 WS=4 TSV=2733024143 TSER=47896226
21 8.999501 10.1.0.2 -> 94.100.176.20 TCP 48512 > smtp [SYN] Seq=0
22 Win=5840 Len=0 MSS=1460 TSV=47898026 TSER=0 WS=7
23 9.090183 94.100.176.20 -> 10.1.0.2 TCP smtp > 48512 [SYN, ACK]
24 Seq=0 Ack=1 Win=32768 Len=0 MSS=1410 WS=4 TSV=2733024143 TSER=47898026
25 12.089847 94.100.176.20 -> 10.1.0.2 TCP smtp > 48512 [SYN, ACK]
26 Seq=0 Ack=1 Win=32768 Len=0 MSS=1410 WS=4 TSV=2733024143 TSER=47898026
27 ^C
28 -------------------------------------------
29 Постоянные попытки установить соединение, и игнорирование syn_ack.
30
31 Anton S. Ustyuzhanin wrote:
32 > Или я что-то не так делаю?
33 >
34 > Anton S. Ustyuzhanin wrote:
35 >> Здравствуйте.
36 >>
37 >> Помогите понять одну вещь.
38 >> Дано: 1 комп, у компа есть два интерфейса:
39 >> eth0: addr:192.168.7.7 - шлюз установлен 192.168.7.1
40 >> tun0: addr:10.1.0.2 P-t-P:10.1.0.1
41 >> на компе рабоает 2 пользователя: kit и babaz. сейчас они оба ходят в
42 >> интернет через 192.168.7.1.
43 >>
44 >> Надо: Сделать так чтобы kit ходил в инет через 10.1.0.1, а babaz через
45 >> 192.168.7.1.
46 >>
47 >> Решение (как я сделал):
48 >> 1. Создать табличку маршрутизации for_kit:
49 >> /etc/iproute2/rt_table:
50 >> --------------------------
51 >> #
52 >> # reserved values
53 >> #
54 >> 255 local
55 >> 254 main
56 >> 253 default
57 >> 0 unspec
58 >> #
59 >> # local
60 >> #
61 >> 1 for_kit
62 >> --------------------------
63 >>
64 >> 2. С помощью ip route add добавить в for_kit следующие маршруты:
65 >> 10.1.0.1 dev tun0 proto kernel scope link src 10.1.0.2
66 >> default via 10.1.0.1 dev tun0
67 >>
68 >> 3. Пометить все пакеты от пользователя kit:
69 >> iptables -t mangle -A OUTPUT -m owner --uid-owner kit -j MARK --set-mark 0x1
70 >>
71 >> 4. Добавить правило маршрутизации:
72 >> ip rule add fwmark 0x1 lookup for_kit
73 >>
74 >> 5. Ожидаемый результат: все должно работать.
75 >>
76 >> Однако все не работает :)
77 >> При снифинге интерфейса tun0 я вижу вот что:
78 >> ---------------------------------------------
79 >> tshark -i tun0
80 >> Capturing on tun0
81 >> 0.000000 192.168.7.7 -> 94.100.176.20 TCP 59027 > smtp [SYN] Seq=0
82 >> Win=5840 Len=0 MSS=1460 TSV=47371023 TSER=0 WS=7
83 >> 2.997266 192.168.7.7 -> 94.100.176.20 TCP 59027 > smtp [SYN] Seq=0
84 >> Win=5840 Len=0 MSS=1460 TSV=47371923 TSER=0 WS=7
85 >> ---------------------------------------------
86 >> Наши пакетики имеют не верный адрес источника. Это конечно же поправимо
87 >> правилом:
88 >> iptables -t nat -I POSTROUTING 1 -m mark --mark 0x1 -j SNAT --to-source
89 >> 10.1.0.2
90 >>
91 >> После добавления такого правила все начинает рабоатать. Но не понятно
92 >> почему же пакетам назначается не правильный адрес источника?
93 >>
94 >
95 >

Replies

Subject Author
Re: [gentoo-user-ru] 1 комп, 2 соединения с интернетом "Anton S. Ustyuzhanin" <kit@×××××××××.kz>