Пусть:
x.x.x.96/28 - выделенная подсеть, которую нужно распределить по машинам в локальной сети.
x.x.x.97 - IP внешнего шлюза.
Требуется поставить между шлюзом и сетью фаервол,
с одним адресом на двух интерфейсах x.x.x.98, транслируя ARP трафик используя "Proxy ARP".(x.x.x.99 ... x.x.x.110) --- (eth1, x.x.x.98 | eth0, x.x.x.98) --- (x.x.x.97)
Удаляем маршруты созданные по умолчанию.
ip route del x.x.x.96/28 dev eth0
ip route del x.x.x.96/28 dev eth1Пакеты для x.x.x.97 пускаем через eth0, а для x.x.x.96/28 через eth1
ip route add x.x.x.97 dev eth0
ip route add x.x.x.96/28 dev eth1Включаем Proxy ARP
echo 1 > /proc/sys/net/ipv4/conf/eth0/proxy_arp
echo 1 > /proc/sys/net/ipv4/conf/eth1/proxy_arp
URL: http://www.sjdjweis.com/linux/proxyarp/ http://www.shorewall.net/ProxyARP.htm
Обсуждается: http://www.opennet.me/tips/info/923.shtml
супер! просто супер! даже не верится что это может работать! это ж замена глючной функции бридж... неужели оно работает... дык это просто циско каталист можно собрать...
Может и не замена бриджу, а альтернатива, важен результат, а не язвительная критика проходящих мимо теоретиков.
теоретик- не теоретик, но бридж-проджект запрошен как лет 5 под линуксом, с новыми ядрами ничо не работает, а если работает, то кроме как пре-альфа-тестингом это назвать нельзя.
если прокси-арп реально работает - это просто спасение- спасибо автору.
>теоретик- не теоретик, но бридж-проджект запрошен как лет 5 под линуксом, с
>новыми ядрами ничо не работает, а если работает, то кроме как
>пре-альфа-тестингом это назвать нельзя.
>если прокси-арп реально работает - это просто спасение- спасибо автору.Васька, есть примета. Если перелез с 2.2 ядра на 2.6 и ниче не работает, то нужно бинари пересобрать (и жылательно посвежее сырцы взять)
http://tldp.org/HOWTO/Proxy-ARP-Subnet/http://tldp.org/HOWTO/Adv-Routing-HOWTO/lartc.bridging.proxy...
Это как заброшен (я про прозрачный бриджинг в Линуксе)???
Xen его и пользует и надо сказать очень удобно !!
По статье. не стоит забывать о такой неприятной вещи, как первоначальная задержка. дабы искоренить этот эффект я делаю так:echo "1">/proc/sys/net/ipv4/neigh/eth0/proxy_delay
echo "1">/proc/sys/net/ipv4/neigh/eth1/proxy_delayНу и на заметку. Если чтобы не усложнять себе жизнь при использовании iproute2, при построении сети вида ЧастьА<=>ЧастьБ советую делать так:
ip addr add 192.168.0.10/24 brd + dev eth0
ip addr add 192.168.0.10/32 brd + dev eth1
ip ro add 192.168.0.0/28 dev eth1Почему так? Порядок проверки маршрутов. Приоритетнее идут маршруты с наименьшей маской подсети. Ну а маска /32 на интерфейсе eth1 освобождает нас от лишний телодвижений по удалению маршрутов. Для eth0 пропишется маршрут в основную подсеть...