Когда писал заметку о сетевых неймспейсах, т.е. о том, как на одном компьютере с одной физической сетевой картой организовать несколько виртуальных сетевых интерфейсов с разными IP (копия), забыл упомянуть о маленьком, но важном моменте.
Все созданные виртуальные сетевые стеки, а эмулируется не только сетевая карта, но и весь стек вместе с маршрутизацией, правилами IPTABLES и т.д., можно и нужно по разному конфигурировать. И, естественно, есть возможность создать разные файлы конфигурации для разных namespaces.
Файлы конфигурации хранятся в каталоге /etc/netns/<имя_namespace>
Например, в основном неймспейсе есть файл /etc/resolv.conf
в котором прописаны адреса DNS для основной системы:
nameserver 10.10.0.1
nameserver 10.10.0.200
И пусть в системе существует второй namespace с именем linkns
и для него надо прописать DNS от Google (8.8.8.8
и 8.8.4.4
):
1. Создаем каталог /etc/netns/linkns
.
2. В каталоге создаем (или копируем готовый из /etc
) файл resolv.conf
.
3. Записываем в файл новые адреса DNS:
nameserver 8.8.8.8
nameserver 8.8.4.4
Аналогично можно поступить и с другими файлами конфигурации, например правилами IPTABLES (если ваша система поддерживает конфигурацию фаервола через конфигурационные файлы).
Pingback: Добавление дополнительных network namespaces к уже настроенным. | Персональный блог Толика Панкова