URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 57447
[ Назад ]

Исходное сообщение
"Пересылка пакетов между двумя сегментами сети"

Отправлено gearbox , 16-Июн-05 16:23 
Привет всем.
Ситуация:
На интерфейсе LAN файрвола D-LINK DFL700 нет возможности настроить шлюз - настраивается только IP и NETMASK. LAN интерфейс файрвола имеет IP 192.168.13.250 Его шлюз по умолчанию задайтся на WAN интерфейсе и смотрит на шлюз провайдера интернета. Существуют две подсети 192.168.13.0/24 и 192.168.14.0/24 Из 192.168.13.0/24 в МастДае XP (aka Windows XP) ставиться шлюз 192.168.13.250  и все ходят в Инет. Из 192.168.14.0/24 я хочу пропускать всех через Linux.
Slaskware Linux 10.0 upgrage 10.1 (glibc, gcc ...)
eth0 192.168.14.252/24
eth1 192.168.13.252/24
route -n :
192.168.14.0  default eth0
192.168.13.0  default eth1
127.0.0.1             lo
default gw    192.168.13.250
iptables по умолчанию всё ACCEPT
ip_forward включен (echo > 1 .../ip_forward)
rp_filter на всякий случай выключен (echo > 0 .../rp_filter)
Виндовая машина 192.168.14.3/24 шлюз 192.168.14.252
ping 192.168.14.252 работает
ping 192.168.13.252 работает
ping 192.168.13.250 не работает
С файрвола
ping 192.168.13.252 работает
ping 192.168.14.252 не работает
Пакеты по видимому доходят до 192.168.13.250 (LAN IP файрвола) а обратно не идут.
Что делать???
Перекопал весь инет, прочитал про proxy arp. Выполнил команды:
echo 1 > /proc/sys/net/ipv4/ip_nonlocal_bind
echo 1 > /proc/sys/net/ipv4/conf/all/proxy_arp
После этого упала вся сеть. Все компьютеры в сети имеют статические адреса. Виндовые XP машины начинают поиск IP адресов. Все виндовые компьютеры начинают конфликтовать IP адресами. Почему так происходит???
Как решить эти проблемы???

Содержание

Сообщения в этом обсуждении
"Пересылка пакетов между двумя сегментами сети"
Отправлено gdenis , 16-Июн-05 17:39 
>Привет всем.
>Ситуация:
>На интерфейсе LAN файрвола D-LINK DFL700 нет возможности настроить шлюз - настраивается
>только IP и NETMASK. LAN интерфейс файрвола имеет IP 192.168.13.250 Его
>шлюз по умолчанию задайтся на WAN интерфейсе и смотрит на шлюз
>провайдера интернета. Существуют две подсети 192.168.13.0/24 и 192.168.14.0/24 Из 192.168.13.0/24 в
>МастДае XP (aka Windows XP) ставиться шлюз 192.168.13.250  и все
>ходят в Инет. Из 192.168.14.0/24 я хочу пропускать всех через Linux.
>
>Slaskware Linux 10.0 upgrage 10.1 (glibc, gcc ...)
>eth0 192.168.14.252/24
>eth1 192.168.13.252/24
>route -n :
>192.168.14.0  default eth0
>192.168.13.0  default eth1
>127.0.0.1            
> lo
>default gw    192.168.13.250
>iptables по умолчанию всё ACCEPT
>ip_forward включен (echo > 1 .../ip_forward)
>rp_filter на всякий случай выключен (echo > 0 .../rp_filter)
>Виндовая машина 192.168.14.3/24 шлюз 192.168.14.252
>ping 192.168.14.252 работает
>ping 192.168.13.252 работает
>ping 192.168.13.250 не работает
>С файрвола
>ping 192.168.13.252 работает
>ping 192.168.14.252 не работает
>Пакеты по видимому доходят до 192.168.13.250 (LAN IP файрвола) а обратно не
>идут.
>Что делать???
>Перекопал весь инет, прочитал про proxy arp. Выполнил команды:
>echo 1 > /proc/sys/net/ipv4/ip_nonlocal_bind
>echo 1 > /proc/sys/net/ipv4/conf/all/proxy_arp
>После этого упала вся сеть. Все компьютеры в сети имеют статические адреса.
>Виндовые XP машины начинают поиск IP адресов. Все виндовые компьютеры начинают
>конфликтовать IP адресами. Почему так происходит???
>Как решить эти проблемы???

Попробуй спросить по другому, цитирую:

Как мне включить NAT на <Название_дистрибутива_Линуха>?

А лучше купи букварь....


"Пересылка пакетов между двумя сегментами сети"
Отправлено gearbox , 17-Июн-05 07:51 
Я прекрасно знаю как включить NAT. Мне нужно чтобы в сеть 192.168.13.0/24 на LAN интерфейс файрвола 192.168.13.250 приходили пакеты из 192.168.14.0/24 как 192.168.14.x а не все как 192.168.13.252 Я хочу считать трафик файрволом и Линухом одновременно по IP адресам.

"Пересылка пакетов между двумя сегментами сети"
Отправлено gdenis , 17-Июн-05 11:08 
>Я прекрасно знаю как включить NAT. Мне нужно чтобы в сеть 192.168.13.0/24
>на LAN интерфейс файрвола 192.168.13.250 приходили пакеты из 192.168.14.0/24 как 192.168.14.x
>а не все как 192.168.13.252 Я хочу считать трафик файрволом и
>Линухом одновременно по IP адресам.


Болт, ничего не выйдет если Длинк не умеет статические маршруты или типа RIP2.


"Пересылка пакетов между двумя сегментами сети"
Отправлено gearbox , 17-Июн-05 15:16 
Понятно... Статические маршруты он точно не умеет.
А что у меня с сетью проискодит при выполнении команды
echo 1 > /proc/sys/net/ipv4/conf/all/proxy_arp   ???
Почему она падает? Линух стоит на Xeon 2 CPU SRCZCR контроллер, поэтому ядро я сам перекомпилировал. В секции NET всё включил (advanced routing... и т. д.) Поставил стандартное bare.i 2.4.29 на другой комп - всё тоже самое. Сеть собрана на свичах D-LINK DES3326SR и DES3326S в стеке. Прошивка последняя. Они третьего уровня. Начинается конфликт IP адресов.
В чём дело?

"Пересылка пакетов между двумя сегментами сети"
Отправлено gdenis , 17-Июн-05 17:08 
>Понятно... Статические маршруты он точно не умеет.
>А что у меня с сетью проискодит при выполнении команды
>echo 1 > /proc/sys/net/ipv4/conf/all/proxy_arp   ???
>Почему она падает? Линух стоит на Xeon 2 CPU SRCZCR контроллер, поэтому
>ядро я сам перекомпилировал. В секции NET всё включил (advanced routing...
>и т. д.) Поставил стандартное bare.i 2.4.29 на другой комп -
>всё тоже самое. Сеть собрана на свичах D-LINK DES3326SR и DES3326S
>в стеке. Прошивка последняя. Они третьего уровня. Начинается конфликт IP адресов.
>
>В чём дело?

Дело в том что ты не понимаешь что значит этот параметр ядра - найди описание.


"Пересылка пакетов между двумя сегментами сети"
Отправлено gearbox , 18-Июн-05 23:08 
А BRIDGE ИЛИ Proxy ARP могут помочь ?

На счёт опции proxy_arp в параметрах ядра цитирую:

Linux Advanced Routing & Traffic Control HOWTO

16.3.2. Реализация

В ранних версиях Linux, для реализации проксирования протокола ARP, вам пришлось бы настраивать ядро. Для того, чтобы сконфигурировать псевдо-мост, вам пришлось бы вручную описать все маршруты по обе стороны моста И создать соответствующие правила. Это требовало достаточно большого объема ручного ввода, что само по себе могло повлечь за собой большое число ошибок.

В Linux 2.4/2.5 (а возможно и в 2.2) все это было заменено установкой флага proxy_arp в файловой системе proc. Теперь процедура настройки псевдо-моста выглядит так:

   1.

      Назначить IP-адреса интерфейсам с обоих сторон.
   2.

      Создать маршруты, так чтобы ваша машина знала, какие адреса, по какую сторону находятся.
   3.

      Включить проксирование ARP для обоих интерфейсов, например командами:

echo 1 > /proc/sys/net/ipv4/conf/ethL/proxy_arp
echo 1 > /proc/sys/net/ipv4/conf/ethR/proxy_arp              
              

      где символами L и R обозначены интерфейсы по одну и по другую сторону моста ( Left и Right -- "слева" и "справа").

Кроме того, не забывайте включить флаг ip_forwarding! Для истинного моста установка этого флага не требуется.

И еще одно обстоятельство, на которое необходимо обратить внимание -- не забывайте очистить кэши arp на компьютерах в сети, которые могут содержать устаревшие сведения и которые больше не являются правильными.

На Cisco для этого существует команда clear arp-cache, в Linux -- команда arp -d ip.address. В принципе, вы можете подождать, пока кэши очистятся самостоятельно, за счет истечения срока хранения записей, но это может занять довольно продолжительное время.

Вы можете ускорить этот процесс, используя замечательный инструмент arping, который во многих дистрибутивах является частью пакета iputils. Утилитой arping вы может отослать незапрошенные arp-сообщения, чтобы модифицировать удаленные кэши arp.

Это очень мощный метод, который, к сожалению, может использоваться злоумышленниками для нарушения правильной маршрутизации!

Примечание:    

В Linux 2.4, возможно потребуется выполнить команду echo 1>/proc/sys/net/ipv4/ip_nonlocal_bind прежде, чем появится возможность отправлять незапрошенные arp-сообщения!
Вы можете также обнаружить некоторые проблемы с сетью, если имеете привычку к определению маршрутов без сетевых масок. При выполнении выборочной маршрутизации совершенно необходимо, чтобы сетевые маски были установлены должным образом.

Ещё:

13.2. Малоизвестные настройки.

/proc/sys/net/ipv4/conf/DEV/proxy_arp

Включает/выключает проксирование arp-запросов для заданного интерфейса. ARP-прокси позволяет маршрутизатору отвечать на ARP запросы в одну сеть, в то время как запрашиваемый хост находится в другой сети. С помощью этого средства происходит "обман" отправителя, который отправил ARP запрос, после чего он "думает", что маршрутизатор является хостом назначения, тогда как в действительности хост назначения находится по другую сторону маршрутизатора. Маршрутизатор выступает в роли уполномоченного агента хоста назначения, перекладывая пакеты от другого хоста. Значение по-умолчанию -- 0 (выключено). Дополнительную информацию вы найдете в Proxy-ARP mini HOWTO.

Здесь ясно написано, что эта опция включает проксирование ARP запросов.

Ещё встречал включать proxy arp так:

arp -i eth1 -Ds 192.168.1.1 eth1 pub
Но это не работает. По видимому, для старых ядер.

???