Есть VPN сервер с десятком туннелей tun0 .... tun10
Клиент идет с сети [192.168.X.0/24] на [ip: 192.168.Y.1] с туннелей [tun1...tun10] в [tun0]
Необходимо сделать следующее:
Клиент который пришел с tun7 должен в tun7 и уйти
Менять Ip клиента не допустимо
P.S. Чую что надо save-mark /restore-mark пользовать - но инфы нормальной найти не могу.
iptables mark по входящему интерфейсу
Модераторы: SLEDopit, Модераторы разделов
-
mandreika
- Сообщения: 217
- ОС: Debian 3,4,5,6
-
IMB
- Сообщения: 2567
- ОС: Debian
Re: iptables mark по входящему интерфейсу
А что Вас навело на мысль, что пакеты выходят через другой интерфейс? На основе чего построен VPN?
-
mandreika
- Сообщения: 217
- ОС: Debian 3,4,5,6
Re: iptables mark по входящему интерфейсу
На базе Openvpn
Вся соль в том что пакет с адресом 192.168.77.77 может поступить на сервер с любого tun интерфейса (кроме tun0), соответственно и ответ надо отправить именно в тот же интерфейс.
Вся соль в том что пакет с адресом 192.168.77.77 может поступить на сервер с любого tun интерфейса (кроме tun0), соответственно и ответ надо отправить именно в тот же интерфейс.
-
Alex2ndr
- Сообщения: 443
- ОС: Debian Lenny
-
mandreika
- Сообщения: 217
- ОС: Debian 3,4,5,6
Re: iptables mark по входящему интерфейсу
Есть клиент (виндовый) который подключен к linux, который может далее отправить пакеты клиента через Openvpn, ipsec циски и.тд.
На сервер его пакет может поступить с пяток различных интерфейсов. Вернуть его надо туда откуда пришел, так как неизвестно какой канал работает в данный момент.
На сервер его пакет может поступить с пяток различных интерфейсов. Вернуть его надо туда откуда пришел, так как неизвестно какой канал работает в данный момент.
-
IMB
- Сообщения: 2567
- ОС: Debian
Re: iptables mark по входящему интерфейсу
Что-то у Вас не сходится. Если клиент Windows конектится к OpenVPN, то он получает адреса с маской 30. В этом случае его пакет ну никак не может придти с другого интерфейса.
Более того, насколько я помню, для каждого коннекта создается свой tun-интерфейс со своей подсетью.
Вы бы показали таблицу маршрутизации на сервере, описали бы структуру сети и подробно задачу.
Более того, насколько я помню, для каждого коннекта создается свой tun-интерфейс со своей подсетью.
Вы бы показали таблицу маршрутизации на сервере, описали бы структуру сети и подробно задачу.
-
ALexhha
- Сообщения: 109
Re: iptables mark по входящему интерфейсу
Более того, насколько я помню, для каждого коннекта создается свой tun-интерфейс со своей подсетью.
виртуальный интерфейс, через ifconfig ты его не увидишь
-
pelmen
- Сообщения: 1268
- ОС: debian
Re: iptables mark по входящему интерфейсу
Может быть я чего-то не понимаю, но когда я подключаюсь к linux-openvpn, то на стороне сервера поднимается виртуальный интерфейс с ip-адресом, находящимся в одной подсети с тем, который назначился мне. После чего в таблицу маашрутизации local добавляется запись, согласно которой обмен пакетами с моим адресом идет именно через нужный виртуальный интерфейс. (не проверял, но почему-то уверен на 100%). Соответственно мнение: либо у вас проблема, которую вы по неопытности приняли за описанную мной и исправляете не то что нужно, либо вы ну ооочень плохо изъясняетесь.
-
IMB
- Сообщения: 2567
- ОС: Debian
Re: iptables mark по входящему интерфейсу
user@localhost
$sudo ifconfig | grep tun
tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
$ sudo ifconfig
..............................................
tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:192.168.2.5 P-t-P:192.168.2.6 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)Ну и никто не мешает воспользоваться более современым методом:
user@localhost
$ ip a | grep tun
4: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 100
inet 192.168.2.5 peer 192.168.2.6/32 scope global tun0-
pelmen
- Сообщения: 1268
- ОС: debian
Re: iptables mark по входящему интерфейсу
Для подтверждения моих слов, покажите пожалуйста еще ip ro ls table local (если я прав насчет local, хотя может и main)
-
mandreika
- Сообщения: 217
- ОС: Debian 3,4,5,6
Re: iptables mark по входящему интерфейсу
Вот вы развели демагогию.Знаю я это всё.
Мне только нужен ответ на вопрос:
Если пакеты идут с нескольких интерфейсов ppp tun eth неважно, как вернуть пакеты именно в тот же интерфейс.
Для роутинга использую маркировку пакетов.
Пакет приходящие с первого интерфеса маркирую 1, второго 2 и т.д.
Нужно пометить все пакеты в пределах соединения, что бы ответные пакеты тоже метились 1,2,3 соответсвенно и отправлялись по интерфесам.
Пробовал в Iptables save-mark /restore-mark но принципа не понял.
Мне только нужен ответ на вопрос:
Если пакеты идут с нескольких интерфейсов ppp tun eth неважно, как вернуть пакеты именно в тот же интерфейс.
Для роутинга использую маркировку пакетов.
Пакет приходящие с первого интерфеса маркирую 1, второго 2 и т.д.
Нужно пометить все пакеты в пределах соединения, что бы ответные пакеты тоже метились 1,2,3 соответсвенно и отправлялись по интерфесам.
Пробовал в Iptables save-mark /restore-mark но принципа не понял.
-
pelmen
- Сообщения: 1268
- ОС: debian
Re: iptables mark по входящему интерфейсу
Пробовал 2 раза читать ваше сообщение но ничего не понял. Зачем это все?
-
mandreika
- Сообщения: 217
- ОС: Debian 3,4,5,6
