Какое техническое решение лучше всего решить?
У меня есть сегмент / 24 с двумя сетевыми адаптерами на одном Linux Server (назовем его srv
), которые имеют в этом сегменте два IP-адреса.
10.10.1.101
/ MAC110.10.1.102
/ MAC2Сегмент 10.10.1.0 /24
соединяется через коммутатор, который обеспечивает доступ через него на основе комбинации MAC / IP, IP устанавливается этим коммутатором DHCP (на основе индивидуального MAC).
Пока это кажется работать - как-то. Я знаю, эта установка технически не в порядке. и заглянуть в /var/log/messages
показывает ожидаемые коллизии (исходные пакеты Martian) на eth1
каждые 500 мс:
... srv kernel: [ 1217.220559] martian source 10.10.1.254 from 10.10.1.112, on dev eth1 srv kernel: [ 1217.220563] ll header: ff:ff:ff:ff:ff:ff:00:1e:68:9d:54:05:08:06 srv kernel: [ 1218.313186] martian source 10.10.1.255 from 10.10.1.59, on dev eth1 srv kernel: [ 1218.313190] ll header: ff:ff:ff:ff:ff:ff:00:13:d4:b7:6f:e9:08:00 ...
Каждая сетевая карта выполняет свои определенные обязанности (подключена к разным веб-сайтам, обслуживаемым одним сервером apache2 в vhosts-setup на основе IP).
Как это решить? Я знаю (и действительно делал), что можно отключить «ведение журнала марсианских пакетов» обычным способом. sysctrl -p
звонки:
net.ipv4.conf.all.log_martians = 0 net.ipv4.conf.eth0.log_martians = 0 net.ipv4.conf.eth1.log_martians = 0 net.ipv4.conf.lo.log_martians = 0
а проблема должна решаться чистым способом? Или нет?
С уважением и благодарностью
rbo
Вам действительно нужны 2 ник?
Обойти это можно, добавив псевдоним к одному из интерфейсов, чтобы назначить дополнительный IP-адрес:
sudo / sbin / ifconfig eth0: 1 10.10.1.102/24 вверх