Как разрулить правильно прохождение пакетов? (Сеть с DCHP, спутниковый инет, GPRS)

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

156
Сообщения: 234
ОС: OPENSUSE ALTLINUX

Как разрулить правильно прохождение пакетов?

Сообщение 156 »

Есть сетка с DCHP , в ней сидят клиенты, которые получают спутниковый инет с сервака, на котором ещё работает фтп сервер. Проблема- когда запущен спутниковый инет, то не работает доступ к фтп серверу, и наоборот. Как сделано- на сервере на порту 8080 работает сквид, он отправляет запросы на глобакс порт 3128, который посылает их по умолчанию на ррр0, принимаются данные по спутниковому каналу, идут в глобакс, в сквид и далее в сетку клиенту. Так вот, для работы спутникового инета сейчас удаляется route del default, по умолчанию это eth0, устанавливаем route add default dev ppp0 и работает спутинковый инет, а все запросы из сети eth0 идут по роуте на ррр0 и там удаляются. Вопрос- каким инструментом можно разрулить маршруты прохождения пакетов, что бы работал спутинковый инет и фтп сервер? Хотя бы в общих чертах...
Спасибо сказали:
ford1813
Сообщения: 383
ОС: Slackware

Re: Как разрулить правильно прохождение пакетов?

Сообщение ford1813 »

156 писал(а):
08.08.2009 16:25
Есть сетка с DCHP , в ней сидят клиенты, которые получают спутниковый инет с сервака, на котором ещё работает фтп сервер. Проблема- когда запущен спутниковый инет, то не работает доступ к фтп серверу, и наоборот. Как сделано- на сервере на порту 8080 работает сквид, он отправляет запросы на глобакс порт 3128, который посылает их по умолчанию на ррр0, принимаются данные по спутниковому каналу, идут в глобакс, в сквид и далее в сетку клиенту. Так вот, для работы спутникового инета сейчас удаляется route del default, по умолчанию это eth0, устанавливаем route add default dev ppp0 и работает спутинковый инет, а все запросы из сети eth0 идут по роуте на ррр0 и там удаляются. Вопрос- каким инструментом можно разрулить маршруты прохождения пакетов, что бы работал спутинковый инет и фтп сервер? Хотя бы в общих чертах...

Локальная зона dns на сервере. Аля ftp.kontora.ru
Контакты для связи:

E-mail: ford1813@gmail.com

Telegram: @ford1813
Спасибо сказали:
Аватара пользователя
Alex2ndr
Сообщения: 443
ОС: Debian Lenny

Re: Как разрулить правильно прохождение пакетов?

Сообщение Alex2ndr »

156 писал(а):
08.08.2009 16:25
Есть сетка с DCHP , в ней сидят клиенты, которые получают спутниковый инет с сервака, на котором ещё работает фтп сервер. Проблема- когда запущен спутниковый инет, то не работает доступ к фтп серверу, и наоборот. Как сделано- на сервере на порту 8080 работает сквид, он отправляет запросы на глобакс порт 3128, который посылает их по умолчанию на ррр0, принимаются данные по спутниковому каналу, идут в глобакс, в сквид и далее в сетку клиенту. Так вот, для работы спутникового инета сейчас удаляется route del default, по умолчанию это eth0, устанавливаем route add default dev ppp0 и работает спутинковый инет, а все запросы из сети eth0 идут по роуте на ррр0 и там удаляются. Вопрос- каким инструментом можно разрулить маршруты прохождения пакетов, что бы работал спутинковый инет и фтп сервер? Хотя бы в общих чертах...

Не совсем понятна ситуация - фтп сервак на том же сервере что и раздает спутниковый инет? если на том же то кто к нему не может получить доступ? клиенты сети? - но к сквиду то они доступ имеют (а от фтп он только портом отличается) и зачем маршрутизация тогда если все с пределах одной подсети? причем тут запросы по из сети на ppp0? у вас там нат/маскарадинг? Неясно в чем дело короче - подробнее поясните.
Спасибо сказали:
156
Сообщения: 234
ОС: OPENSUSE ALTLINUX

Re: Как разрулить правильно прохождение пакетов?

Сообщение 156 »

1. фтп сервак на том же сервере что и раздает спутниковый инет?-Да, на том же.
2. если на том же то кто к нему не может получить доступ? клиенты сети?- Да, клиенты сети, которые находятся за роутерами 3го уровня в других подсетях, так сервак в 10.50.170.* а клиенты в 10.50.164.* , причем они не могут получить доступ ко всему серваку, если выключить спутниковый инет, и сделать роуте дефаул eth0, то из сетки 10.50.164.* фтп на 10.50.170.* доступ есть..
3. и зачем маршрутизация тогда если все с пределах одной подсети? - Не в одной подсети, как видно 10.50.164.* и 10.50.170.* разные сети.
4. причем тут запросы по из сети на ppp0? - При том, что для сети 10.50.164.* фтп сервер в сети 10.50.170.* пропадает когда изменишь роутер по умолчанию с eth0 на ррр0 командой route add default dev ppp0 ,и в сети 10.50.170.* работает спутинковый инет.
Кажется мне, что надо оставть route defaul eth0 , при этом фтп сервак 10.50.170.* будет виден в подсети 10.50.164.* вместе со своим инетом, а globax с порта 3128 надо зарулить на ррр0 не по роуте дефаулт, а каким то другим способом, что бы рулился на ррр0 только порт 3128...
Спасибо сказали:
Аватара пользователя
danger08
Сообщения: 715
ОС: Linux (CentOS, Ubuntu)

Re: Как разрулить правильно прохождение пакетов?

Сообщение danger08 »

Что-то неясно с маршрутизацией сетей, находящихся за eth0.
Пропишите статические маршруты на подсети, находящиеся за eth0, или подкорректирейте уже имеющийся маршрут (выставьте более подходящую маску подсети в параметрах IP).
Блогосайт - http://www.fateyev.com
Спасибо сказали:
Аватара пользователя
Alex2ndr
Сообщения: 443
ОС: Debian Lenny

Re: Как разрулить правильно прохождение пакетов?

Сообщение Alex2ndr »

156 писал(а):
08.08.2009 20:43
Кажется мне, что надо оставть route defaul eth0 , при этом фтп сервак 10.50.170.* будет виден в подсети 10.50.164.* вместе со своим инетом, а globax с порта 3128 надо зарулить на ррр0 не по роуте дефаулт, а каким то другим способом, что бы рулился на ррр0 только порт 3128...

думаю что дефаут роут надо оставить в интернет а для вашей подсети добавить маршрут до нужной подсети - типа
route add -net 10.50.164.0 netmask 255.255.255.0 dev eth0 gw <ip маршрутизатора из сети 10.50.170.* в 10.50.164.*>
не уверен за маски

короче разберитесь со статической маршрутизацией как вам и посоветовали ранее
Спасибо сказали:
156
Сообщения: 234
ОС: OPENSUSE ALTLINUX

Re: Как разрулить правильно прохождение пакетов?

Сообщение 156 »

Спасибо за ответы, вот что пишет комп
metrologia:/home/serg # route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.64.64.64 * 255.255.255.255 UH 0 0 0 ppp0
10.50.170.128 * 255.255.255.128 U 0 0 0 eth0
172.20.0.0 * 255.255.0.0 U 0 0 0 dvb0_0
loopback * 255.0.0.0 U 0 0 0 lo
default * 0.0.0.0 U 0 0 0 ppp0
metrologia:/home/serg #
Роутеры между сетями для меня прозрачны, поэтому написать как советовали "route add -net 10.50.164.0 netmask 255.255.255.0 dev eth0 gw <ip маршрутизатора из сети 10.50.170.* в 10.50.164.*>" не получится, так как я не знаю адрес роутера, который пересылает пакеты между сетями. Роутер , предположительно , шлет какието пакеты для определения наличия компа в сети, и при роуте дефалт eth0 получает ответ и держит маршрутизацию на 10.50.170.* всей остальной сети, если сделать дефаулт ррр0, то предположительно приходящий трафик кроме прокси на 8080 режется фаерволом сервака при перенаправлении его на ррр0, по графику видно, что исходящего трафика с eth0 нету кроме трафика прокси и фтп для подсети 10.50.170.* . Поэтому попрошу такого совета- как globax с порта 3128 зарулить на ррр0 не по роуте дефаулт, а каким то другим способом, что бы рулился на внешнюю зону ррр0 только порт 3128 с внутренней зоны, а роуте дефаулт был eth0 ( тогда сервак виден в сети)?

Добавлено позже- как вариант, поможет правило в иптаблесе в стиле "127.0.0.1:3128 forwad dev ppp0" . Внимание на иптаблес обратил, потому что роуте оперирует сетями и интерфейсами, а нам нужно зарулить порты, с портами работает иптаблес, или я ошибаюсь?
Спасибо сказали:
Аватара пользователя
Alex2ndr
Сообщения: 443
ОС: Debian Lenny

Re: Как разрулить правильно прохождение пакетов?

Сообщение Alex2ndr »

156 писал(а):
09.08.2009 05:05
Спасибо за ответы, вот что пишет комп
metrologia:/home/serg # route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.64.64.64 * 255.255.255.255 UH 0 0 0 ppp0
10.50.170.128 * 255.255.255.128 U 0 0 0 eth0
172.20.0.0 * 255.255.0.0 U 0 0 0 dvb0_0
loopback * 255.0.0.0 U 0 0 0 lo
default * 0.0.0.0 U 0 0 0 ppp0
metrologia:/home/serg #

Это вы звездочки на место Gateway поставили или вам так комп выдает(со звездочками)?

156 писал(а):
09.08.2009 05:05
Роутеры между сетями для меня прозрачны, поэтому написать как советовали "route add -net 10.50.164.0 netmask 255.255.255.0 dev eth0 gw <ip маршрутизатора из сети 10.50.170.* в 10.50.164.*>" не получится, так как я не знаю адрес роутера, который пересылает пакеты между сетями. Роутер , предположительно , шлет какието пакеты для определения наличия компа в сети, и при роуте дефалт eth0 получает ответ и держит маршрутизацию на 10.50.170.* всей остальной сети, если сделать дефаулт ррр0, то предположительно приходящий трафик кроме прокси на 8080 режется фаерволом сервака при перенаправлении его на ррр0, по графику видно, что исходящего трафика с eth0 нету кроме трафика прокси и фтп для подсети 10.50.170.* .

Если они прозрачны то это не роутеры а мосты - но тогда все определяется настойкой нормальной маски подсети. Но я думаю что вы ошибаетесь и это все-таки роутеры - просто вы не знаете как определить их адреса. А делается это просто - надо на других машинах в сети посмотреть маршрутизацию - и узнать какой там стоит маршрутизатор по умолчанию. И еще - изучите то что вы настраиваете - а то делаете вслепую как-то и выдумываете непонятно что - Книга по TCP/IP(дочитать до главы 9 включительно)
Спасибо сказали:
156
Сообщения: 234
ОС: OPENSUSE ALTLINUX

Re: Как разрулить правильно прохождение пакетов?

Сообщение 156 »

Это вы звездочки на место Gateway поставили или вам так комп выдает(со звездочками)?-Это так выдал комп, если поправить смещения, то будет выглядеть так:

Код: Выделить всё

Kernel IP routing table
Destination     Gateway         Genmask             Flags    Metric   Ref    Use     Iface
10.64.64.64       *               255.255.255.255      UH        0         0        0      ppp0
10.50.170.128    *               255.255.255.128      U         0         0        0      eth0
172.20.0.0         *               255.255.0.0             U         0         0        0      dvb0_0
loopback           *               255.0.0.0                 U         0         0        0       lo
default              *               0.0.0.0                     U         0        0        0       eth0

Эти звездочки имеют какое то значение?
За книгу спасибо. Про настраивание "не знаю что" скажу, что главная задача - обеспечение доступа к информации в инет и на фтп имеет несколько решений, и какое из них оптимально, я не знаю,так как специалист в другой области. Документация , найденная по гуглу, в основном рассматривает простейшие базовые случаи, когда настраивается маршруты между интерфейсами, сетями и портами , мне же надо выстроить цепочку между портами ( что уже сделано ) внутри одного компа и в конце закинуть с порта 3128 на устройство ррр0, не нарушив при этом работу eth0. Грубо говоря, получается конфликт пересылки пакетов между ррр0 и eth0 dchp. Если интересно, можно будет связяться через аську и в интерактиве попробовать свои знания, вы будете давать указания, я буду их выполнять и сообщать результат. Я не прошу готового решения, мне достаточно указать направление...
Спасибо сказали:
Аватара пользователя
Alex2ndr
Сообщения: 443
ОС: Debian Lenny

Re: Как разрулить правильно прохождение пакетов?

Сообщение Alex2ndr »

156 писал(а):
09.08.2009 13:29
Это вы звездочки на место Gateway поставили или вам так комп выдает(со звездочками)?-Это так выдал комп, если поправить смещения, то будет выглядеть так:

Код: Выделить всё

Kernel IP routing table
Destination     Gateway         Genmask             Flags    Metric   Ref    Use     Iface
10.64.64.64       *               255.255.255.255      UH        0         0        0      ppp0
10.50.170.128    *               255.255.255.128      U         0         0        0      eth0
172.20.0.0         *               255.255.0.0             U         0         0        0      dvb0_0
loopback           *               255.0.0.0                 U         0         0        0       lo
default              *               0.0.0.0                     U         0        0        0       eth0

Эти звездочки имеют какое то значение?

Уже разобрался - просто я привык к выводу команды route -n где для маршрута без маршрутизатора в адресе гейта стоит 0.0.0.0 - поэтому звездочки меня малость запутали.
156 писал(а):
09.08.2009 13:29
За книгу спасибо. Про настраивание "не знаю что" скажу, что главная задача - обеспечение доступа к информации в инет и на фтп имеет несколько решений, и какое из них оптимально, я не знаю,так как специалист в другой области. Документация , найденная по гуглу, в основном рассматривает простейшие базовые случаи, когда настраивается маршруты между интерфейсами, сетями и портами , мне же надо выстроить цепочку между портами ( что уже сделано ) внутри одного компа и в конце закинуть с порта 3128 на устройство ррр0, не нарушив при этом работу eth0. Грубо говоря, получается конфликт пересылки пакетов между ррр0 и eth0 dchp. Если интересно, можно будет связяться через аську и в интерактиве попробовать свои знания, вы будете давать указания, я буду их выполнять и сообщать результат. Я не прошу готового решения, мне достаточно указать направление...

Маршрутизация и проброс портов это разные вещи и работают они в разных областях. Мне кажется что вашу проблему можно решить просто маршрутизацией не влезая в iptables - но я конечно всего не знаю и честно говоря смутно представляю вашу ситуацию - могу и ошибаться
Если вам требуется помощь пишите в личку - сегодня я дома и могу пообщаться - только у меня не аська а джабер.
Спасибо сказали:
156
Сообщения: 234
ОС: OPENSUSE ALTLINUX

Re: Как разрулить правильно прохождение пакетов?

Сообщение 156 »

Почитав документацию, решил сделать трассировку до компов в других подсетях, обнаружилась закономерность, везде путь начинался с 10.50.170.129

Код: Выделить всё

metrologiats:/etc # traceroute 10.50.164.235
traceroute to 10.50.164.235 (10.50.164.235), 30 hops max, 40 byte packets
 1  10.50.170.129 (10.50.170.129)  21.488 ms   21.468 ms   21.475 ms
 *
*
metrologiats:/etc # traceroute 10.50.161.1
traceroute to 10.50.161.1 (10.50.161.1), 30 hops max, 40 byte packets
 1  10.50.170.129 (10.50.170.129)  21.544 ms   21.460 ms   21.457 ms
*
*
 4  10.50.175.138 (10.50.175.138)  72.516 ms * *
metrologiats:/etc # netstat -nr
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
10.50.170.128   0.0.0.0         255.255.255.128 U         0 0          0 eth0
127.0.0.0       0.0.0.0         255.0.0.0       U         0 0          0 lo
0.0.0.0         10.50.170.129   0.0.0.0         UG        0 0          0 eth0
metrologiats:/etc #

Решил попробовать указать его как маршрутизатор между подсетями
route add -net 10.50.161.1 netmask 255.255.255.0 dev eth0 gw 10.50.170.129
при включенном route default ppp0 из сети 10.50.161.1 стал виден фтп сервер , сделав аналогичный роутинг для остальных сетей получил нормальный доступ фтп серваку. Так что спасибо за правильный совет, ваша скромность не знает границ, как и ваши знания ( комплимент). Но возникла другая проблема- перестал идти через спутник интернет, весь уходящий и приходящий трафик теперь идёт через ррр0, что не есть гуд. Раньше 100% работало через спутник. Пробовал убрать все нововведения, оказалось, что дело не в них. Что на данный момент имеется- если с сервера идти в инет , в браузере указав как прокси порт глобакса 3128,то работает через спутник, если указать сквид 8080, то идет через ррр0. Но к глобаксу не удается подключится с других компов сети, к сквиду подключаются без проблем. Вот конфиг сквида

Код: Выделить всё

http_port 8080 это указываем как порт в браузере
cache_peer 127.0.0.1 parent 3128 0  no-query это пишем, что сквиду надо обращаться к глобаксу на порт 3128
prefer_direct off предпочтительное направление отключаем, зачем не знаю,но советовали для хорошей работы с глобаксом
hierarchy_stoplist  cgi-bin \? user php submit search login Login hid если в кэш попали странички с этими словами, не брать их из кэша
acl donocache urlpath_regex cgi-bin php \? user submit search login Login hid не писать в кэш странички с этими словами, а брать их с инета
no_cache deny donocache
#https_port 443 cert=/etc/ssl/certs/cacert.pem  key=/etc/ssl/certs/privkey.pem defaultsite=visolve.com это пытался настроить https, при перезапуске свкида просит длиннющий пароль, испльзованый для создания сертификата , очень не удобно, и всё равно https не работает, буду разбираться позднее
#key=/etc/ssl/certs/privkey.pem defaultsite=visolve.com это путь к ключу
#dns_nameservers 10.11.12.13 10.11.12.14  где брать днс, пока не работает
acl test1 arp 00:**:**:**:**:** доступ по мак адресу
acl allowed_clients src 10.50.170.230 127.0.0.1 доступ по ип адресу
acl SSL_ports port 443 563 доступ по портам
acl Safe_ports port 80
acl Safe_ports port 21
acl Safe_ports port 443
acl Safe_ports port 70
acl Safe_ports port 210
acl Safe_ports port 1025-65535
acl Safe_ports port 280
acl Safe_ports port 488
acl Safe_ports port 591
acl Safe_ports port 777
acl CONNECT method CONNECT что такое не понятно, но с этим на форуме писали будет работать лучше
#
http_access allow test1
http_access allow allowed_clients
http_access allow SSL_ports
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access deny !allowed_clients
http_access deny all
#http_access allow all
#cache_peer 127.0.0.1 parent 3128 3130 default
#cache_peer 127.0.0.1 parent 3129 0 proxy-only no-query пример подлкючения глобакса и сквида, только тут сквид ничего не кэширует, только раздает в сетьб
#http://linuxopen.ru/2008/12/24/unix.-prakticheskoe-posobie.html

Пробовал настроить джаббер, инет ограниченный, пока не получилось.
Спасибо сказали:
Аватара пользователя
Alex2ndr
Сообщения: 443
ОС: Debian Lenny

Re: Как разрулить правильно прохождение пакетов?

Сообщение Alex2ndr »

156 писал(а):
11.08.2009 14:11
Но возникла другая проблема- перестал идти через спутник интернет, весь уходящий и приходящий трафик теперь идёт через ррр0, что не есть гуд. Раньше 100% работало через спутник. Пробовал убрать все нововведения, оказалось, что дело не в них. Что на данный момент имеется- если с сервера идти в инет , в браузере указав как прокси порт глобакса 3128,то работает через спутник, если указать сквид 8080, то идет через ррр0. Но к глобаксу не удается подключится с других компов сети, к сквиду подключаются без проблем. Вот конфиг сквида

Код: Выделить всё

http_port 8080 это указываем как порт в браузере
cache_peer 127.0.0.1 parent 3128 0  no-query это пишем, что сквиду надо обращаться к глобаксу на порт 3128
prefer_direct off предпочтительное направление отключаем, зачем не знаю,но советовали для хорошей работы с глобаксом
hierarchy_stoplist  cgi-bin \? user php submit search login Login hid если в кэш попали странички с этими словами, не брать их из кэша
acl donocache urlpath_regex cgi-bin php \? user submit search login Login hid не писать в кэш странички с этими словами, а брать их с инета
no_cache deny donocache
#https_port 443 cert=/etc/ssl/certs/cacert.pem  key=/etc/ssl/certs/privkey.pem defaultsite=visolve.com это пытался настроить https, при перезапуске свкида просит длиннющий пароль, испльзованый для создания сертификата , очень не удобно, и всё равно https не работает, буду разбираться позднее
#key=/etc/ssl/certs/privkey.pem defaultsite=visolve.com это путь к ключу
#dns_nameservers 10.11.12.13 10.11.12.14  где брать днс, пока не работает
acl test1 arp 00:**:**:**:**:** доступ по мак адресу
acl allowed_clients src 10.50.170.230 127.0.0.1 доступ по ип адресу
acl SSL_ports port 443 563 доступ по портам
acl Safe_ports port 80
acl Safe_ports port 21
acl Safe_ports port 443
acl Safe_ports port 70
acl Safe_ports port 210
acl Safe_ports port 1025-65535
acl Safe_ports port 280
acl Safe_ports port 488
acl Safe_ports port 591
acl Safe_ports port 777
acl CONNECT method CONNECT что такое не понятно, но с этим на форуме писали будет работать лучше
#
http_access allow test1
http_access allow allowed_clients
http_access allow SSL_ports
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access deny !allowed_clients
http_access deny all
#http_access allow all
#cache_peer 127.0.0.1 parent 3128 3130 default
#cache_peer 127.0.0.1 parent 3129 0 proxy-only no-query пример подлкючения глобакса и сквида, только тут сквид ничего не кэширует, только раздает в сетьб
#http://linuxopen.ru/2008/12/24/unix.-prakticheskoe-posobie.html

Пробовал настроить джаббер, инет ограниченный, пока не получилось.

Вопросы мо мере возникновения
1. Перестал работать а точно работал? вспоминайте что делали. Все добавления к маршрутам пропадают после перезагрузки - если после перезагрузки та же история то дело не в них
2. Надеюсь ваши пояснения не присутствуют в реальном конфиге или хотя бы отделены решеткой - как коментарии.
3. Что сквид пишет в логах смотрели? Включите их добалением опции

Код: Выделить всё

access_log /var/log/squid/access.log squid

и смотрите что он там пишет когда кто-то через него лезет.
4. Вот вам мой конфиг - вроде уже который раз кочует с машину на машину и все работает. Сделал в основном убиранием коментариев из дефолтного конфига. добавьте вашу опцию ( cache_peer 127.0.0.1 parent 3128 0 no-query ), замените адреса в директиве my_net, замените имя машины в опции visible_hostname и попробуйте с моим. Посмотрите что получиться.

Код: Выделить всё

http_port 192.168.0.1:8080

hierarchy_stoplist cgi-bin ?

acl QUERY urlpath_regex cgi-bin \?
cache deny QUERY

acl apache rep_header Server ^Apache
broken_vary_encoding allow apache

access_log /var/log/squid/access.log squid

hosts_file /etc/hosts

refresh_pattern ^ftp:           1440    20%     10080
refresh_pattern ^gopher:        1440    0%      1440
refresh_pattern .               0       20%     4320

acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 80          # http
acl SSL_ports port 443          # https
acl SSL_ports port 563          # snews
acl SSL_ports port 873          # rsync
acl SSL_ports port 5190         # ICQ
acl SSL_ports port 5222-5223    # Jabber
acl SSL_ports port 9418         # Git
acl Safe_ports port 80          # http
acl Safe_ports port 21          # ftp
acl Safe_ports port 443         # https
acl Safe_ports port 70          # gopher
acl Safe_ports port 210         # wais
acl Safe_ports port 1025-65535  # unregistered ports
acl Safe_ports port 280         # http-mgmt
acl Safe_ports port 488         # gss-http
acl Safe_ports port 591         # filemaker
acl Safe_ports port 777         # multiling http
acl Safe_ports port 631         # cups
acl Safe_ports port 873         # rsync
acl Safe_ports port 901         # SWAT
acl purge method PURGE
acl CONNECT method CONNECT
acl my_net src 192.168.0.0/24

http_access allow manager localhost
http_access deny manager

http_access allow purge localhost
http_access deny purge

http_access allow SSL_ports
http_access deny !Safe_ports

http_access deny CONNECT !SSL_ports

http_access allow my_net
http_access allow localhost

http_access deny all

http_reply_access allow all

icp_access allow all

cache_effective_group proxy
visible_hostname deb-serv.myhome.local

coredump_dir /var/spool/squid

Навскидку оценить что у вас там твориться сложно
Спасибо сказали:
156
Сообщения: 234
ОС: OPENSUSE ALTLINUX

Re: Как разрулить правильно прохождение пакетов?

Сообщение 156 »

Спасибо за ответ, зарулить сквид жестко на глобакс помогла такая конструкция
cache_peer 127.0.0.1 parent 3128 0 no-query
#connect-timeout=80000
never_direct allow all
время пришлось закоментировать, так как сквид становился очень задумчивым...
Пересматривая свои действия, пытаясь понять, почему сквид стал ходить в инет мимо глобакса, пришел к выводу, что когда пробовал различные маршрутизации и манипуляции с зонами, что то гдето незаметно для себя поменял. Как вариант, возможно виновать параметр prefer_direct on , по которому если сквид не получил ответа от родительского прокси, можно лезть в инет напрямую. Со сквидом на данном этапе разобрались, но при получившейся на данный момент кофигурации фаервол режет приходящие ответы с устройства dvb0_0. Они приходят, это видно по графику трафика, но в глобакс не попадают, глобакс посылает запрос повторно, и запрос зацикливается наматывая трафик. Если вырубить фаервол, то странички грузятся. Возник вопрос-есть три вида зон, внешняя, внутренняя и демилитаризованная. Есть три устройства, сетевуха eth0 , спутниковая карта dvb0_0, командная строка из которой запускаем wvdial и плучаем ррр0. Собственно вопрос- в какую зону какой интерфейс правильно будет записать? В опен сусе интерфейс не записаный в зону блокируется, в инете внятное определение зоны нашел только для демилитаризованной зоны. Проход трафика из зоны в зону , предполагаю надо описывать отдельно, иначе зачем заводить зоны. Во внутренней корпоративной сетке сидят продвинутые пользователи. Вот что пишет иптаблес

Код: Выделить всё

metrologia:/home/serg # route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.64.64.64     *               255.255.255.255 UH    0      0        0 ppp0
172.20.*.*    *               255.255.255.255 UH    0      0        0 dvb0_0
10.50.170.128   *               255.255.255.128 U     0      0        0 eth0
172.20.0.0      *               255.255.0.0     U     0      0        0 dvb0_0
loopback        *               255.0.0.0       U     0      0        0 lo
default         *               0.0.0.0         U     0      0        0 ppp0
metrologia:/home/serg # cat /proc/sys/net/ipv4/ip_forward
1
metrologia:/home/serg # cat /proc/sys/net/ipv4/conf/dvb0_0/rp_filter
0
metrologia:/home/serg # iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

включаем фаервол в сусе

metrologia:/home/serg # iptables -L
Chain INPUT (policy DROP)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere
ACCEPT     all  --  anywhere             anywhere            state ESTABLISHED
ACCEPT     icmp --  anywhere             anywhere            state RELATED
input_int  all  --  anywhere             anywhere
input_int  all  --  anywhere             anywhere
input_ext  all  --  anywhere             anywhere
input_int  all  --  anywhere             anywhere
DROP       all  --  anywhere             anywhere

Chain FORWARD (policy DROP)
target     prot opt source               destination
TCPMSS     tcp  --  anywhere             anywhere            tcp flags:SYN,RST/SYN TCPMSS clamp to PMTU
forward_int  all  --  anywhere             anywhere
forward_int  all  --  anywhere             anywhere
forward_ext  all  --  anywhere             anywhere
DROP       all  --  anywhere             anywhere

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere
ACCEPT     all  --  anywhere             anywhere            state NEW,RELATED,ESTABLISHED

Chain forward_ext (1 references)
target     prot opt source               destination
ACCEPT     icmp --  anywhere             anywhere            state RELATED,ESTABLISHED icmp echo-reply
ACCEPT     icmp --  anywhere             anywhere            state RELATED,ESTABLISHED icmp destination-unreachable
ACCEPT     icmp --  anywhere             anywhere            state RELATED,ESTABLISHED icmp time-exceeded
ACCEPT     icmp --  anywhere             anywhere            state RELATED,ESTABLISHED icmp parameter-problem
ACCEPT     icmp --  anywhere             anywhere            state RELATED,ESTABLISHED icmp timestamp-reply
ACCEPT     icmp --  anywhere             anywhere            state RELATED,ESTABLISHED icmp address-mask-reply
ACCEPT     icmp --  anywhere             anywhere            state RELATED,ESTABLISHED icmp protocol-unreachable
ACCEPT     icmp --  anywhere             anywhere            state RELATED,ESTABLISHED icmp redirect
DROP       all  --  anywhere             anywhere            PKTTYPE = multicast
DROP       all  --  anywhere             anywhere

Chain forward_int (2 references)
target     prot opt source               destination
ACCEPT     icmp --  anywhere             anywhere            state RELATED,ESTABLISHED icmp echo-reply
ACCEPT     icmp --  anywhere             anywhere            state RELATED,ESTABLISHED icmp destination-unreachable
ACCEPT     icmp --  anywhere             anywhere            state RELATED,ESTABLISHED icmp time-exceeded
ACCEPT     icmp --  anywhere             anywhere            state RELATED,ESTABLISHED icmp parameter-problem
ACCEPT     icmp --  anywhere             anywhere            state RELATED,ESTABLISHED icmp timestamp-reply
ACCEPT     icmp --  anywhere             anywhere            state RELATED,ESTABLISHED icmp address-mask-reply
ACCEPT     icmp --  anywhere             anywhere            state RELATED,ESTABLISHED icmp protocol-unreachable
ACCEPT     icmp --  anywhere             anywhere            state RELATED,ESTABLISHED icmp redirect
DROP       all  --  anywhere             anywhere            PKTTYPE = multicast
reject_func  all  --  anywhere             anywhere

Chain input_ext (1 references)
target     prot opt source               destination
DROP       all  --  anywhere             anywhere            PKTTYPE = broadcast
ACCEPT     icmp --  anywhere             anywhere            icmp source-quench
ACCEPT     icmp --  anywhere             anywhere            icmp echo-request
ACCEPT     tcp  --  anywhere             anywhere
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:ftp
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:ndl-aas
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:https
ACCEPT     tcp  --  anywhere             anywhere            tcp dpts:mrt:60000
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:nntps
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:bootps
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:http
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:http-alt
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:domain
ACCEPT     udp  --  anywhere             anywhere            udp dpt:10
ACCEPT     udp  --  anywhere             anywhere            udp dpt:re-mail-ck
ACCEPT     udp  --  anywhere             anywhere            udp dpt:bootps
ACCEPT     udp  --  anywhere             anywhere            udp dpt:domain
ACCEPT     tcp  --  172.20.*.*         anywhere            tcp dpt:ndl-aas
DROP       all  --  anywhere             anywhere            PKTTYPE = multicast
DROP       all  --  anywhere             anywhere

Chain input_int (3 references)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere

Chain reject_func (1 references)
target     prot opt source               destination
REJECT     tcp  --  anywhere             anywhere            reject-with tcp-reset
REJECT     udp  --  anywhere             anywhere            reject-with icmp-port-unreachable
REJECT     all  --  anywhere             anywhere            reject-with icmp-proto-unreachable
metrologia:/home/serg #

Попутно - как лучше сделать автозагрузку маршрутизации в подсети 10.50.16*.* при старте системы?

Сквид почти закончен, потом биллинг, сталось совсем немного! ;)
Спасибо сказали:
Аватара пользователя
Alex2ndr
Сообщения: 443
ОС: Debian Lenny

Re: Как разрулить правильно прохождение пакетов?

Сообщение Alex2ndr »

156 писал(а):
12.08.2009 10:49
Возник вопрос-есть три вида зон, внешняя, внутренняя и демилитаризованная. Есть три устройства, сетевуха eth0 , спутниковая карта dvb0_0, командная строка из которой запускаем wvdial и плучаем ррр0. Собственно вопрос- в какую зону какой интерфейс правильно будет записать? В опен сусе интерфейс не записаный в зону блокируется, в инете внятное определение зоны нашел только для демилитаризованной зоны. Проход трафика из зоны в зону , предполагаю надо описывать отдельно, иначе зачем заводить зоны. Во внутренней корпоративной сетке сидят продвинутые пользователи.

Внутренняя зона это интерфейсы смотрящие внутрь сети. Внешняя - в интернет соотв. Демилитаризованной зоны у вас наверно нет - по крайней мере я бы не стал с ней морочиться по такому поводу. Соответственно dvb0_0 и ppp0 внешняя а eth0 внутренняя.
Раз уж вы подошли к настройке iptables то хочу указать на пару моментов:
1. Забросьте вы эти графические конфигурялки фаерволов - лучше самому эти правила писать нежели полагаться на фаервол - так проще потом понять что куда, откуда и почему.
2. Изучите как работает iptables - http://www.opennet.ru/docs/RUS/iptables/

156 писал(а):
12.08.2009 10:49
Попутно - как лучше сделать автозагрузку маршрутизации в подсети 10.50.16*.* при старте системы?

Ну я бы прописал в post-up для интерфейса eth0 в /etc/network/interfaces - подробнее man interfaces. Но у меня Дебиан - как в Сюзе я не знаю. Можно также написать скрипт в который все эти роуты засунуть и поместить его автозагрузку.
Спасибо сказали: