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

Прямой трафик между пространствами имен

У меня 3 интерфейса: eth0 eth1 eth2:

  1. eth0 напрямую подключен к Интернету.
  2. eth1 и eth2 подключены к внешнему коммутатору без подключения к Интернету.

Моя цель состояла в том, чтобы подключиться eth1 и eth2 через внешний коммутатор и пересылать трафик между двумя интерфейсами через коммутатор. Итак, я создал два пространства имен ns1 и ns2 и назначил eth1 и eth2 каждому соответственно.

Каждому интерфейсу назначена своя собственная сеть IPv4.eth1 имеет 10.1.0.10/24 и eth2 имеет 10.2.0.10/24 и я могу без проблем перенаправлять трафик между этими двумя интерфейсами через коммутатор.

Теперь я хочу перенаправить трафик, полученный на eth2 в Интернет, так что приложения в ns1 может подключиться к Интернету через коммутатор (обратите внимание, что только eth1 и eth2 подключены к коммутатору, и коммутатор не имеет подключения к Интернету, и единственное подключение к Интернету осуществляется через eth0 (который в настоящее время не является частью какого-либо пространства имен).

Вероятно, есть способ использовать veth или TUN пары интерфейсов для пересылки трафика от ns2 к eth0, но мне интересно, есть ли более простой способ добиться этого.

Вот как выглядит моя установка:

 .--------.eth1        .--------.        eth2.--------.
 | ns1    |------------| switch |------------|   ns2  |
 '--------'            '--------'            '--------'
 .--------.eth0        .--------.
 | default|------------|Internet|
 '--------'            '--------'