Я пытаюсь понять различия между двумя сетевыми конфигурациями для MAAS. Я понимаю, что оба выполняют те же задачи, когда первая сеть подключается к Интернету, а вторая управляется MAAS. Вторая сеть затем настроена для пересылки трафика через общий сетевой интерфейс.
Несмотря на достижение тех же результатов, конфигурация выглядит совсем по-другому, и в этом заключается моя путаница.
Первая предлагаемая конфигурация исходит из следующих решений Cloudbase Страница Wiki. Они предлагают простой /etc/network/interfaces, когда eth0 подключается к внешней сети, а eth1 переходит во внутреннюю сеть и получает статический адрес:
# The primary network interface (external)
auto eth0
iface eth0 inet dhcp
# The secondary NIC (used internal for MAAS)
auto eth1
iface eth1 inet static
address 192.168.1.1
netmask 255.255.255.0
Соответствующие iptables правила затем проведенного в /etc/rc.local. Насколько мне известно, это связано с пересылкой сетевого трафика между eth1 и eth0.
/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
/sbin/iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
/sbin/iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
Вторая конфигурация происходит из Страница Cloudbase Solutions Wiki . Их файл /etc/network/interfaces имеет больше сетевых интерфейсов, но похож на предыдущую конфигурацию, где eth0 подключается к внешней сети, а eth1 является внутренним:
# The loopback network interface
auto lo
iface lo inet loopback
dns-nameservers 127.0.0.1
pre-up iptables-restore < /etc/network/iptables.rules
auto eth0
iface eth0 inet dhcp
auto eth1
iface eth1 inet manual
auto br0
iface br0 inet static
address 172.16.0.1
netmask 255.255.255.0
bridge_ports eth1
Вопросы, которые появляются у меня на голове сценарий, почему сервер lo использует DNS-сервер имен и iptables? Почему это мостовое соединение, используемое в этом случае?
Их правила iptable также выглядят по-разному и помещены в /etc/network/iptables.rules и предполагают, что это позволяет пересылать трафик:
*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 172.16.0.1/24 ! -d 172.16.0.1/24 -j MASQUERADE
COMMIT
[d11 ] Резюме
Кто-нибудь может объяснить, что они делают по-другому и почему?
Сообщите мне, если этот вопрос слишком велик, и я могу разделить его на отдельные вопросы, но в первом случае я думал, что это предоставило больше контекста.
Первая конфигурация сети довольно ясна. Файл / etc / network / interfaces знаком для всех, и, конечно же, пересылка IP через iptables необходима при использовании MAAS для обеспечения доступа в Интернет к узлам, которым управляет MAAS.
Вторая конфигурация, отличная от Часть DNS и часть br0 понятны. Часть DNS должна фактически заставить сервер MAAS понять, что он сам обслуживает службы DNS. Эта строка может быть перенесена на /etc/resolve.conf, которая включает в себя другие конфигурации DNS. Если эта запись DNS не сделана, вы достигнете этой ошибки во время начальной загрузки JUJU: https://github.com/Ubuntu-Solutions-Engineering/openstack-installer/issues/901
Однако я не очень уверенно о мостике. Действительно ли эта сетевая конфигурация работает?