LINUX.ORG.RU
решено ФорумAdmin

Source based routing не работает

 , ,


1

0

Добавил в /etc/iproute2/rt_tables

200     isp2

Запустил:

ip rule add from ISP2_MY_IP dev eth0 table isp2
ip route add default via ISP2_GW dev eth0 table isp2

Пытаюсь

ping -I eth0 8.8.8.8
PING 8.8.8.8 (8.8.8.8) from ISP2_MY_IP eth0: 56(84) bytes of data.
From ISP2_MY_IP icmp_seq=1 Destination Host Unreachable

tcpdump на eth0 вообще пакетов не видит.

Что я делаю не так?

P.S. default сетевой интерфейс eth2

Edit: Ping и доступ через этот IP снаружи работают!


Ответ на: комментарий от uspen

ip route add default via ISP2_GW dev eth0 table isp2

-> RTNETLINK answers: No such process

iab ()
Ответ на: комментарий от zolden

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN 
    inet 127.0.0.1/8 scope host lo

2: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    inet YY.YY.YY.236/24 brd YY.YY.YY.255 scope global eth2

3: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    inet XX.XX.XX.106/28 brd XX.XX.XX.111 scope global eth0

4: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    inet 192.168.0.1/24 brd 192.168.0.255 scope global eth1

XX.XX.XX.0/24 dev eth2  proto kernel  scope link  src XX.XX.XX.236 
192.168.0.0/24 dev eth1  proto kernel  scope link  src 192.168.0.1 
169.254.0.0/16 dev eth2  scope link  metric 1002 
169.254.0.0/16 dev eth0  scope link  metric 1003 
169.254.0.0/16 dev eth1  scope link  metric 1004 
default via XX.XX.XX.254 dev eth2 

0:	from all lookup local 
32765:	from YY.YY.YY.106 lookup isp2 
32766:	from all lookup main 
32767:	from all lookup default 

ip r g 8.8.8.8
8.8.8.8 via XX.XX.XX.254 dev eth2  src XX.XX.XX.236 
    cache  mtu 1500 advmss 1460 hoplimit 64

iptables непричём, без них ничего не работает.

iab ()

Сократил до

ip rule add from ISP2_MY_IP table isp2
ip route add default via ISP2_GW table isp2

не работает.

iab ()
Ответ на: комментарий от zolden

default: isp на eth2

для всего остального с bind(ISP2_IP) -> isp на eth0

eth1 - локалка

Доступ извне на ISP2_IP сейчас полностью работает - и пинги, и порты - проблема в том, что изнутри ничего не пашет :(

iab ()

Вопрос решён - надо меньше работать с температурой.

ping -I ТУТ_НАДО_IP_А_НЕ_ИМЯ_ИНТЕРФЕЙСА address

iab ()
Ответ на: комментарий от zolden

команда не работает:

-A POSTROUTING -o eth0 -s 192.168.0.33 -j SNAT --to-source YY.YY.YY.106

счётчик пакетов в iptables пуст:

Chain POSTROUTING (policy ACCEPT 23 packets, 9455 bytes)
num   pkts bytes target     prot opt in     out     source               destination         
4        0     0 SNAT       all  --  *      eth0    192.168.0.33        0.0.0.0/0           to:YY.YY.YY.106
iab ()
Ответ на: комментарий от iab

чтобы сработал этот snat, нужно чтобы пакеты попадали в новую таблицу маршрутизации. через ip rule, -t nat mangle и fwmark например

ponch ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.