Назад | Перейти на главную страницу

Маршрутизация интернет-трафика через один ник, а локальный трафик через второй.

Я пытаюсь направить трафик через определенный интерфейс в зависимости от пункта назначения.

ОС - CentOS 7.

Я создаю мини-ферму MPI, где у меня есть 2 подчиненных и один мастер. Ведущее устройство и ведомые устройства используют встроенный nic (em1) для локальной связи через коммутатор (таким образом, все рабочие имеют «локальные» IP-адреса 192.168.1. *).

Затем у меня есть вторичный nic (p2p1), который подключен к моему маршрутизатору для внешнего интернет-трафика.

Поскольку в настоящее время все настроено, я могу без проблем подключиться к каждому рабочему по ssh, но я не могу общаться с Интернетом (пинг 8.8.8.8 утверждает, что он не может получить доступ к серверу Google).

Судя по тому, что я искал, мне не удалось найти решение этой конкретной проблемы, но я считаю, что это простое решение ...

ввод маршрута дает

Kernel IP routing table
Destination     Gateway      Genmask       Flags Metric Ref Use Iface
default         Linksys01356 0.0.0.0       UG    100    0     0 em1
default         gateway      0.0.0.0       UG    101    0     0 p2p1
10.11.230.0     0.0.0.0      255.255.255.0 U     101    0     0 p2p1
192.168.1.0     0.0.0.0      255.255.255.0 U     100    0     0 em1
192.168.122.0   0.0.0.0      255.255.255.0 U     0      0     0 virbr0

и ввод iptables --list дает

Chain INPUT (policy ACCEPT)
target     prot opt source            destination
ACCEPT     udp  --  anywhere          anywhere            udp dpt:domain
ACCEPT     tcp  --  anywhere          anywhere            tcp dpt:domain
ACCEPT     udp  --  anywhere          anywhere            udp dpt:bootps
ACCEPT     tcp  --  anywhere          anywhere            tcp dpt:bootps

Chain FORWARD (policy ACCEPT)
target     prot opt source            destination
ACCEPT     all  --  anywhere          192.168.122.0/24    ctstate RELATED,ESTABLISHED
ACCEPT     all  --  192.168.122.0/24  anywhere
ACCEPT     all  --  anywhere          anywhere
REJECT     all  --  anywhere          anywhere            reject-with icmp-port-unreachable
REJECT     all  --  anywhere          anywhere            reject-with icmp-port-unreachable

Chain OUTPUT (policy ACCEPT)
target     prot opt source            destination
ACCEPT     udp  --  anywhere          anywhere            udp dpt:bootpc

В идеале я бы хотел, чтобы все компьютеры MPI (ведущие и ведомые) общались с помощью em1, а ведущий извлекал данные из-за пределов локальной сети на p2p1.

Если это помогает, главный IP-адрес - 10.11.230.43 для внешнего доступа и 192.168.1.143 в локальной сети, а одно подчиненное устройство имеет IP-адрес 192.168.1.118.

Если мне не хватает другой информации, дайте мне знать.

Спасибо

Вы установили маршрут "по умолчанию" для обеих сетевых адаптеров, но "по умолчанию" означает, среди прочего, номер один. Туда идет движение, у которого нет другого маршрута. Если вы случайно задали более одного из них, то выбор будет определяться меньшим показателем. В этом случае это означает, что ваш связанный с Интернетом трафик направляется на «Linksys01356» на интерфейсе em1.

Поскольку это не то, что вам нужно, вам следует перенастроить интерфейс em1, чтобы удалить адрес шлюза. Единственный шлюз, который следует определить, - это тот, который направляет ваш трафик в Интернет.