LINUX.ORG.RU
решено ФорумAdmin

2 изолированные сети на одном компьютере


0

1

Имеется сервер (слака-12) с двумя сетевыми картами, eth0 c 192.168.0.1/255.255.255.0, технологическая сеть, eth1 с DHCP - виндовая офисная сеть предприятия. С недавних пор офисный админ требует перевести первую сеть в другую зону адресов, так как из его сети мой сервер ИНОГДА(!) отвечает на 192.168.0.1 и создает проблемы (интересно, что до этого 5 лет все было норм...). Форвардинг выключен, eth1 закрыт iptables, открыты только DHCP и HTTP. Проверил - мой сервер ВСЕГДА отвечает по адресам обоих интерфейсов но с MACом eth1. Заткнуть эту дыру с помощью iptables не получается... Хотя мой сервак воткнут в офисноую сеть через крутую Циску (работающую в режиме прямой кишки), решить проблему с помощю маршрутизатора админ категорически отказался. Менять адреса в технологической сети очень не хочется, есть ли другой способ изолировать интерфейсы?



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

Попробуйте посмотреть в этом направлении:

/usr/src/linux/Documentation/networking/ip-sysctl.txt
----------
arp_ignore - INTEGER
Define different modes for sending replies in response to
received ARP requests that resolve local target IP addresses:
0 - (default): reply for any local target IP address, configured
on any interface
1 - reply only if the target IP address is local address
configured on the incoming interface
2 - reply only if the target IP address is local address
configured on the incoming interface and both with the
sender's IP address are part from same subnet on this interface
3 - do not reply for local addresses configured with scope host,
only resolutions for global and link addresses are replied
4-7 - reserved
8 - do not reply for all local addresses

The max value from conf/{all,interface}/arp_ignore is used
when ARP request is received on the {interface}


Т.е. сделать что-то вроде
sysctl -w net.ipv4.conf.eth1.arp_ignore=1

spirit ★★★★★
()

Проверил - мой сервер ВСЕГДА отвечает по адресам обоих интерфейсов но с MACом eth1.

Заткнуть эту дыру с помощью iptables не получается...

На что он отвечает ? iptables не поможет только для не IP пакетов, следовательно из не IP пакетов остаётся только DHCP, который работает с «сырыми» сокетами. Но DHCP сервер надо специально вешать на заданный интерфейс, если он у вас там слушает, значит это не случайность. Да и отвечать он должен от правильного IP (давно правда с DHCP имел дело, могу ошибаться).

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

отвечает на icmp запросы, если их закрыть, перестает работать мой dhcp клиент.

lps
() автор топика
Ответ на: комментарий от spirit

Спасибо, наверное это то что надо, попробую! уже копал в ARP, ставил arp_filtering=1 - не помогло.

lps
() автор топика
Ответ на: комментарий от spirit

> 1 - reply only if the target IP address is local address configured on the incoming interface

Помогло!

Создал файл /etc/sysctl.conf (Патрику таки лень включать этот файл в дистры, поэтому в Слаке все стоит по нулям...), прописал строчку: net.ipv4.conf.eth1.arp_ignore=1

и проблема решилась

Еще раз спасибо!

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