IP команда маршрута с исходной опцией

У меня есть несколько интерфейсов в моей системе, угождающей различным подсетям. У меня также есть псевдо интерфейс, который является p-to-p драйвером для туннелирующих пакетов. Я пытался добавить маршруты с помощью IP команды маршрута для использования исходного IP определенных интерфейсов при отсылке пакетов в туннельном интерфейсе.

В этом примере я хочу использовать 11.11.11.1 исходных IP, которые установлены на eth1.100 при отправке пакетов в 60.60.60.1, который достижим по туннелю. Это - то, как моя таблица маршрутизации похожа.

/tmp # ip route show
60.60.60.1 dev tsgw  scope link  src 11.11.11.1  >> Added this route.
11.11.11.0/24 dev eth1.100  proto kernel  scope link  src 11.11.11.1
default via 192.168.1.254 dev eth1.4094  metric 10
192.168.1.0/24 dev eth1.4094  proto kernel  scope link  src 192.168.1.3 

Если я проверяю с помощью ping-запросов 60.60.60.1, это все еще выбирает мой интерфейс, через который программируется маршрут по умолчанию.

PING 60.60.60.1 (60.60.60.1): 56 data bytes
19:35:32.848428 IP 192.168.1.3 > 60.60.60.1: ICMP echo request, id 16986, seq 0, length 64
19:35:33.848621 IP 192.168.1.3 > 60.60.60.1: ICMP echo request, id 16986, seq 1, length 64
19:35:34.848819 IP 192.168.1.3 > 60.60.60.1: ICMP echo request, id 16986, seq 2, length 64

Я делаю что-то не так с установкой источника? Что правильный путь состоит в том, чтобы пойти об этом? В основном я надеюсь отправлять все пакеты, берущие интерфейс tsgw для использования определенного частного исходного IP.

eth1.100  Link encap:Ethernet  HWaddr 00:0B:86:B8:91:10
          inet addr:11.11.11.1  Bcast:11.11.11.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1602  Metric:1
          RX packets:560 errors:0 dropped:0 overruns:0 frame:0
          TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:97395 (95.1 KiB)  TX bytes:704 (704.0 B)


tsgw      Link encap:Point-Point Protocol  
          inet addr:127.0.0.2  P-t-P:127.0.0.2  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:960  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6240 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 B)  TX bytes:1121650 (1.0 MiB)
0
задан 7 November 2014 в 09:36
1 ответ

Я бы использовал для этого iptables.

С маскировкой это выглядело бы так:

iptables -t nat -A POSTROUTING -o tsgw -j MASQUERADE
0
ответ дан 5 December 2019 в 13:03

Теги

Похожие вопросы