NETWORK_NAMESPACES(7) | Руководство программиста Linux | NETWORK_NAMESPACES(7) |
network_namespaces - обзор сетевых пространств имён Linux
Сетевые пространства имён позволяют изолировать системные ресурсы, связанные с сетью: сетевые устройства, стеки протоколов IPv4 и IPv6, таблицы IP-маршрутизации, правила межсетевых экранов, каталог /proc/net (символическая ссылка на /proc/PID/net), каталог /sys/class/net, различные файлы в /proc/sys/net, номера портов (сокеты) и т. п. Также сетевые пространства имён изолируют пространство имён абстрактных сокетов домена UNIX (смотрите unix(7)).
Физическое сетевое устройство может находиться только в одном сетевом пространстве имён. Когда сетевое пространство имён высвобождается (т. е., когда завершается последний процесс в пространстве имён), его физические сетевые устройства перемещаются обратно в первоначальное сетевое пространство имён (не родительского процесса).
Пара устройств виртуальной сети (veth(4)) предоставляет подобную каналу абстракцию, которую можно использовать для создания туннелей между сетевыми пространствами имён, а также для создания мостов к физическому сетевому устройству в другом пространстве имён. Когда пространство имён освобождается, устройства veth(4), содержащиеся в нём, уничтожаются.
Для использования пространств имён network требуется, чтобы ядро было собрано с параметром CONFIG_NET_NS.
nsenter(1), unshare(1), clone(2), veth(4), proc(5), sysfs(5), namespaces(7), user_namespaces(7), brctl(8), ip(8), ip-address(8), ip-link(8), ip-netns(8), iptables(8), ovs-vsctl(8)
2018-02-02 | Linux |