LINUX.ORG.RU

Хочу mount bind не для директорий а для сетевых сокетов

 


0

1

Хочу аналог mount bind, но не для директорий, а для сетевых сокетов.

Существует ли в линукс возможность подключения портов с одного сетевого интерфейса (network adapter) на другой сетевой интерфейс, но когда эти интерфейсы находятся к тому же на разных сетевых неймспейсах (network namespace) ? При этом не используя программы по типу socat. Чтобы трафик не гонять зря. Это же нагрузка на ЦПУ и создаёт сетевые лаги. Сетевыми интерфейсами могут быть реальные сетевые карты, виртуальные (tun, bridge).



Последнее исправление: wrangler2020 (всего исправлений: 2)

ничего не понял, но…

$ man ip-link

       ip link set { DEVICE | group GROUP }

               [ alias NAME ]


       alias NAME
              give the device a symbolic name for easy reference.
anonymous
()

Порты же к ip-адресам биндятся, а не к интерфейсам. DNAT чем не подходит? Или вы про broadcast трафик?

mky ★★★★★
()
Ответ на: комментарий от mky

Порты же к ip-адресам биндятся, а не к интерфейсам.

Да.

DNAT чем не подходит?

DNAT подходит лишь для одного сетевого неймспейса.

Разные сетевые неймспейсы используются когда нужно разделить сетевые интерфейсы по разным сервисам, для упрощения настройки сети. И для lxc/docker.

Стандартным решением является использование veth pair.

Я же хочу более простой способ доступа к сокетам. Без промежуточных виртуальных устройств (tun) и програм (socat).

wrangler2020
() автор топика

Есть системный вызов, чтобы войти в пространство имён. Правда я не помню, как называется. Но так можно.

ls-h ★★★★★
()
Ответ на: комментарий от ls-h

Да, с помощью nsenter можно войти в чужое пространство имён. Это удобно. Но не для моего случая.

Мне нужно создать клон сокета в другом пространство имён (network namespace). Если это возможно. Если я чтото упустил в возможностях современного ядра линукс.

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