пропадания проходящего трафика (debian 4 etch)

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

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

patrius
Сообщения: 337
ОС: Debian (4 & 5) -> Gentoo

пропадания проходящего трафика

Сообщение patrius »

Собственно проблема такая.

с машинах пользователей пропадает трафик наружу. при пинге идет или "превышен интервал" или вообще ответ сервера "хост недоступен".
пинг ведется на сервер *,*,*,1 и на шлюз *,*,*,33. у сервера наружу смотрит *,*,*,34.
пинг на 1 и 34 идет нормально постоянно, на 33 пропадает.
в это время пинг с самого сервера на шлюз (да и куда угодно наружу) идет нормально (и с -s 1500).
если с сервера включен пинг на 33, пропадания трафа происходят намного реже.

никакой закономерности в пропадании трафа не замечено.
в логах ни слова об ошибках или сбоях.
никаких настроек, обновлений... на момент сбоя не проводилось уже 3-4 дня.

Что уже сделано:
- замена сетевых карт (обе проверенные)
- "разворот" потока чарез сервер, т.е. eth0 и eth2 ,менялись настройками.
- остановлен htb, который шейпил траф
- остановлен cban, который работал с eth'ами на предмет статистики
- очищена и переведена в ACCEPT FORWARD цепочка iptables.

Все у кого спрашивал в рели разводят руками...
Как вернуть работоспособность серверу??
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: пропадания проходящего трафика

Сообщение sash-kan »

patrius писал(а):
27.04.2009 20:40
на 33 пропадает

в этот момент смотрите за этими пакетами на обоих интерфейсах своего шлюза (как я понял, шлюзом вы называете шлюз провайдера, а собственный шлюз — сервером).
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
patrius
Сообщения: 337
ОС: Debian (4 & 5) -> Gentoo

Re: пропадания проходящего трафика

Сообщение patrius »

sash-kan, да именно это я и имел в виду.
как я раньше то недогадался запустить IPTRAF :cray:

в общем получилось:
1. в нормальном режиме

Код:

ICMP echo req (528 bytes) from *.*.*.108 to *.*.*.33 on eth2 ICMP echo req (528 bytes) from *.*.*.108 to *.*.*.33 on eth0 ICMP echo rply (528 bytes) from *.*.*.33 to *.*.*.108 on eth0 ICMP echo rply (528 bytes) from *.*.*.33 to *.*.*.108 on eth2

2. при "сбое"

Код:

ICMP echo req (528 bytes) from *.*.*.108 to *.*.*.33 on eth2

для чистоты эксперемента "абоненту" присваивался белый IP.

из этого следует, что пакет на теряется между eth2(локальный) и eth0 (наружный).
а чем это может быть вызвано? с чем бороться? у мну идеи кончились..

на всякий случай добавлю, что

Код:

/proc/sys/net/ipv4/ip_forward = 1
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: пропадания проходящего трафика

Сообщение sash-kan »

в netfilter добавьте логирование цепочек (например, только icmp-трафика). хотя бы входящего тракта. но, для чистоты, лучше во все.
руководствуясь картинкой: http://www.opennet.ru/docs/RUS/iptables/mi...es_traverse.jpg
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
patrius
Сообщения: 337
ОС: Debian (4 & 5) -> Gentoo

Re: пропадания проходящего трафика

Сообщение patrius »

sash-kan писал(а):
27.04.2009 23:42
в netfilter добавьте логирование цепочек (например, только icmp-трафика). хотя бы входящего тракта. но, для чистоты, лучше во все.
руководствуясь картинкой: http://www.opennet.ru/docs/RUS/iptables/mi...es_traverse.jpg

т.е. чтоб пакет отчитывался о своем продвижении в лог?

В результате получилось примерно такое

Код:

vpr1="-s *.*.*.108 -d *.*.*.33" vpr2="-s *.*.*.33 -d *.*.*.108" vpr3="-d *.*.*.108" npak="-p icmp" vlog="-j LOG --log-level debug" ###################################### # 0 Сетевой интерфейс # 1 пункт - встреча mangle PREROUTING $IPI -t mangle -I PREROUTING 1 $npak $vpr1 $vlog --log-prefix "ip2--deb 1.1 - " $IPI -t mangle -I PREROUTING 2 $npak $vpr2 $vlog --log-prefix "ip2--deb 2.1 - " $IPI -t mangle -I PREROUTING 3 $npak $vpr3 $vlog --log-prefix "ip2--deb 3.1 - " # 2 пункт - nat PREROUTING $IPI -t nat -I PREROUTING 1 $npak $vpr1 $vlog --log-prefix "ip2--deb 1.2 - " $IPI -t nat -I PREROUTING 2 $npak $vpr2 $vlog --log-prefix "ip2--deb 2.2 - " $IPI -t nat -I PREROUTING 3 $npak $vpr3 $vlog --log-prefix "ip2--deb 3.2 - " # пункт - Принятие решения о дальнейшей маршрутизации #??? # 3 пункт - mangle FORWARD $IPI -t mangle -I FORWARD 1 $npak $vpr1 $vlog --log-prefix "ip2--deb 1.3 - " $IPI -t mangle -I FORWARD 2 $npak $vpr2 $vlog --log-prefix "ip2--deb 2.3 - " $IPI -t mangle -I FORWARD 3 $npak $vpr3 $vlog --log-prefix "ip2--deb 3.3 - " # 4 пункт - Filter FORWARD $IPI -I FORWARD 1 $npak $vpr1 $vlog --log-prefix "ip2--deb 1.4 - " $IPI -I FORWARD 2 $npak $vpr2 $vlog --log-prefix "ip2--deb 2.4 - " $IPI -I FORWARD 3 $npak $vpr3 $vlog --log-prefix "ip2--deb 3.4 - " # 5 пункт - mangle POSTROUTING $IPI -t mangle -I POSTROUTING 1 $npak $vpr1 $vlog --log-prefix "ip2--deb 1.5 - " $IPI -t mangle -I POSTROUTING 2 $npak $vpr2 $vlog --log-prefix "ip2--deb 2.5.f - " $IPI -t mangle -I POSTROUTING 3 $npak $vpr3 $vlog --log-prefix "ip2--deb 3.5.f - " # 6 пункт - nat POSTROUTING $IPI -t nat -I POSTROUTING 1 $npak $vpr1 $vlog --log-prefix "ip2--deb 1.6.f - " $IPI -t nat -I POSTROUTING 2 $npak $vpr2 $vlog --log-prefix "ip2--deb 2.6 - " $IPI -t nat -I POSTROUTING 3 $npak $vpr3 $vlog --log-prefix "ip2--deb 2.6.f - " # .на Выходной сетевой интерфейс

путь в разъяснение взят от сюда.
стандартный наблюдаемый лог

Код:

Apr 28 00:56:22 fant kernel: ip2--deb 1.1 - IN=eth2 OUT= MAC=00:11:95:d1:70:54:00:21:85:12:f3:f4:08:00 SRC=*.*.*.108 DST=*.*.*.33 LEN=528 TOS=0x00 PREC=0x00 TTL=128 ID=19036 DF PROTO=ICMP TYPE=8 CODE=0 ID=1024 SEQ=56068 Apr 28 00:56:22 fant kernel: ip2--deb 1.2 - IN=eth2 OUT= MAC=00:11:95:d1:70:54:00:21:85:12:f3:f4:08:00 SRC=*.*.*.108 DST=*.*.*.33 LEN=528 TOS=0x00 PREC=0x00 TTL=128 ID=19036 DF PROTO=ICMP TYPE=8 CODE=0 ID=1024 SEQ=56068 Apr 28 00:56:22 fant kernel: ip2--deb 1.3 - IN=eth2 OUT=eth0 SRC=*.*.*.108 DST=*.*.*.33 LEN=528 TOS=0x00 PREC=0x00 TTL=127 ID=19036 DF PROTO=ICMP TYPE=8 CODE=0 ID=1024 SEQ=56068 Apr 28 00:56:22 fant kernel: ip2--deb 1.4 - IN=eth2 OUT=eth0 SRC=*.*.*.108 DST=*.*.*.33 LEN=528 TOS=0x00 PREC=0x00 TTL=127 ID=19036 DF PROTO=ICMP TYPE=8 CODE=0 ID=1024 SEQ=56068 Apr 28 00:56:22 fant kernel: ip2--deb 1.5 - IN= OUT=eth0 SRC=*.*.*.108 DST=*.*.*.33 LEN=528 TOS=0x00 PREC=0x00 TTL=127 ID=19036 DF PROTO=ICMP TYPE=8 CODE=0 ID=1024 SEQ=56068 Apr 28 00:56:22 fant kernel: ip2--deb 1.6.f - IN= OUT=eth0 SRC=*.*.*.108 DST=*.*.*.33 LEN=528 TOS=0x00 PREC=0x00 TTL=127 ID=19036 DF PROTO=ICMP TYPE=8 CODE=0 ID=1024 SEQ=56068 Apr 28 00:56:22 fant kernel: ip2--deb 2.1 - IN=eth0 OUT= MAC=00:02:44:00:98:30:00:19:56:99:1c:e1:08:00 SRC=*.*.*.33 DST=*.*.*.108 LEN=528 TOS=0x00 PREC=0x00 TTL=255 ID=19036 DF PROTO=ICMP TYPE=0 CODE=0 ID=1024 SEQ=56068 Apr 28 00:56:22 fant kernel: ip2--deb 3.1 - IN=eth0 OUT= MAC=00:02:44:00:98:30:00:19:56:99:1c:e1:08:00 SRC=*.*.*.33 DST=*.*.*.108 LEN=528 TOS=0x00 PREC=0x00 TTL=255 ID=19036 DF PROTO=ICMP TYPE=0 CODE=0 ID=1024 SEQ=56068 Apr 28 00:56:22 fant kernel: ip2--deb 2.3 - IN=eth0 OUT=eth2 SRC=*.*.*.33 DST=*.*.*.108 LEN=528 TOS=0x00 PREC=0x00 TTL=254 ID=19036 DF PROTO=ICMP TYPE=0 CODE=0 ID=1024 SEQ=56068 Apr 28 00:56:22 fant kernel: ip2--deb 3.3 - IN=eth0 OUT=eth2 SRC=*.*.*.33 DST=*.*.*.108 LEN=528 TOS=0x00 PREC=0x00 TTL=254 ID=19036 DF PROTO=ICMP TYPE=0 CODE=0 ID=1024 SEQ=56068 Apr 28 00:56:22 fant kernel: ip2--deb 2.4 - IN=eth0 OUT=eth2 SRC=*.*.*.33 DST=*.*.*.108 LEN=528 TOS=0x00 PREC=0x00 TTL=254 ID=19036 DF PROTO=ICMP TYPE=0 CODE=0 ID=1024 SEQ=56068 Apr 28 00:56:22 fant kernel: ip2--deb 3.4 - IN=eth0 OUT=eth2 SRC=*.*.*.33 DST=*.*.*.108 LEN=528 TOS=0x00 PREC=0x00 TTL=254 ID=19036 DF PROTO=ICMP TYPE=0 CODE=0 ID=1024 SEQ=56068 Apr 28 00:56:22 fant kernel: ip2--deb 2.5.f - IN= OUT=eth2 SRC=*.*.*.33 DST=*.*.*.108 LEN=528 TOS=0x00 PREC=0x00 TTL=254 ID=19036 DF PROTO=ICMP TYPE=0 CODE=0 ID=1024 SEQ=56068 Apr 28 00:56:22 fant kernel: ip2--deb 3.5 - IN= OUT=eth2 SRC=*.*.*.33 DST=*.*.*.108 LEN=528 TOS=0x00 PREC=0x00 TTL=254 ID=19036 DF PROTO=ICMP TYPE=0 CODE=0 ID=1024 SEQ=56068

после превышения интервала ожидания

Код:

Apr 28 00:58:16 fant kernel: ip2--deb 1.1 - IN=eth2 OUT= MAC=00:11:95:d1:70:54:00:21:85:12:f3:f4:08:00 SRC=*.*.*.108 DST=*.*.*.33 LEN=528 TOS=0x00 PREC=0x00 TTL=128 ID=19193 DF PROTO=ICMP TYPE=8 CODE=0 ID=1024 SEQ=56324 Apr 28 00:58:16 fant kernel: ip2--deb 1.2 - IN=eth2 OUT= MAC=00:11:95:d1:70:54:00:21:85:12:f3:f4:08:00 SRC=*.*.*.108 DST=*.*.*.33 LEN=528 TOS=0x00 PREC=0x00 TTL=128 ID=19193 DF PROTO=ICMP TYPE=8 CODE=0 ID=1024 SEQ=56324 Apr 28 00:58:16 fant kernel: ip2--deb 1.3 - IN=eth2 OUT=eth0 SRC=*.*.*.108 DST=*.*.*.33 LEN=528 TOS=0x00 PREC=0x00 TTL=127 ID=19193 DF PROTO=ICMP TYPE=8 CODE=0 ID=1024 SEQ=56324 Apr 28 00:58:16 fant kernel: ip2--deb 1.4 - IN=eth2 OUT=eth0 SRC=*.*.*.108 DST=*.*.*.33 LEN=528 TOS=0x00 PREC=0x00 TTL=127 ID=19193 DF PROTO=ICMP TYPE=8 CODE=0 ID=1024 SEQ=56324 Apr 28 00:58:16 fant kernel: ip2--deb 1.5 - IN= OUT=eth0 SRC=*.*.*.108 DST=*.*.*.33 LEN=528 TOS=0x00 PREC=0x00 TTL=127 ID=19193 DF PROTO=ICMP TYPE=8 CODE=0 ID=1024 SEQ=56324 Apr 28 00:58:16 fant kernel: ip2--deb 1.6.f - IN= OUT=eth0 SRC=*.*.*.108 DST=*.*.*.33 LEN=528 TOS=0x00 PREC=0x00 TTL=127 ID=19193 DF PROTO=ICMP TYPE=8 CODE=0 ID=1024 SEQ=56324 Apr 28 00:58:22 fant kernel: ip2--deb 3.5.f - IN= OUT=eth2 SRC=195.184.209.105 DST=*.*.*.108 LEN=76 TOS=0x00 PREC=0xC0 TTL=64 ID=7184 PROTO=ICMP TYPE=3 CODE=1 [SRC=*.*.*.108 DST=195.189.143.140 LEN=48 TOS=0x00 PREC=0x00 TTL=127 ID=19198 DF PROTO=TCP SPT=3698 DPT=443 WINDOW=65535 RES=0x00 SYN URGP=0 ]

после потерь пакетов зачастую наблюдается обход этапов nat PREROUTING и POSTROUTING.

Складывается впечатление, что пакеты уходят из iptables, но до eth0 недоходят.
Щас попробую выключить iptables (iptables v1.3.6:).
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: пропадания проходящего трафика

Сообщение sash-kan »

patrius писал(а):
27.04.2009 23:48
$IPI -t mangle -I PREROUTING 1 $npak $vpr1 $vlog --log-prefix "ip2--deb 1.1 - "
$IPI -t mangle -I PREROUTING 2 $npak $vpr2 $vlog --log-prefix "ip2--deb 2.1 - "
$IPI -t mangle -I PREROUTING 3 $npak $vpr3 $vlog --log-prefix "ip2--deb 3.1 - "
не понятно, зачем по три правила в одну цепочку? из-за этого (и несоответствия информации в посте) так и не врубился, кто там у вас и откуда и куда уходит/не уходит.

patrius писал(а):
27.04.2009 23:48
iptables v1.3.6
может, имеет смысл начать с обновления ядра?
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
patrius
Сообщения: 337
ОС: Debian (4 & 5) -> Gentoo

Re: пропадания проходящего трафика

Сообщение patrius »

sash-kan писал(а):
28.04.2009 16:20
patrius писал(а):
27.04.2009 23:48
$IPI -t mangle -I PREROUTING 1 $npak $vpr1 $vlog --log-prefix "ip2--deb 1.1 - "
$IPI -t mangle -I PREROUTING 2 $npak $vpr2 $vlog --log-prefix "ip2--deb 2.1 - "
$IPI -t mangle -I PREROUTING 3 $npak $vpr3 $vlog --log-prefix "ip2--deb 3.1 - "
не понятно, зачем по три правила в одну цепочку?

Код:

vpr1="-s *.*.*.108 -d *.*.*.33" - направление №1 от ПК до шлюза vpr2="-s *.*.*.33 -d *.*.*.108" - напроваление №2 от шлюза до ПК vpr3="-d *.*.*.108" - все icmp пакеты от кого угодно до ПК npak="-p icmp" vlog="-j LOG --log-level debug"

все эти цепочки отслеживают все возможные потоки трафика (в данном случии icmp) в цепочке "ПК" - "сервер" - "шлюз".

sash-kan писал(а):
28.04.2009 16:20
из-за этого (и несоответствия информации в посте) так и не врубился, кто там у вас и откуда и куда уходит/не уходит.

о каком несоответствии идет речь???
пропадает трафик от ПК, как было уточнено на участке vpr1="-s *.*.*.108 -d *.*.*.33" - направление №1 от ПК до шлюза
дополнительное осложнение вызывается стабильностью трафика "ПК" - "сервер" и "сервер" - "шлюз" при отсутствии трафика "ПК" - "шлюз"

sash-kan писал(а):
28.04.2009 16:20
patrius писал(а):
27.04.2009 23:48
iptables v1.3.6
может, имеет смысл начать с обновления ядра?

сейчас стоит Linux pasane 2.6.26-2-686 #1 SMP Thu Mar 26 01:08:11 UTC 2009 i686 GNU/Linux Debian 5.0
До какой версии ядра имеет смысл обновлятся и что мне это даст сейчас?
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: пропадания проходящего трафика

Сообщение sash-kan »

patrius писал(а):
29.04.2009 11:25
о каком несоответствии идет речь

на вскидку:
1.
Apr 28 00:56:22 fant kernel: ip2--deb 3.5 -
нет такого правила среди приведённых.
2.
последняя запись в «после превышения интервала ожидания» — это не относящийся к делу мусор? а если не мусор, то что там за бред с адресами? dst был один (195.189.143.140), в ответе же src совершенно другой (195.184.209.105).

patrius писал(а):
29.04.2009 11:25
2.6.26
версия iptables меня смутила. почему-то я всегда считал, что изменение версия ядра довольно близко кореллирует с изменением версии iptables. в частности:
@a$ uname -r
2.6.18…
@a$ sudo iptables --version
iptables v1.3.5
@b$ uname -r
2.6.26…
@b$ sudo iptables --version
iptables v1.4.2
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: пропадания проходящего трафика

Сообщение sash-kan »

patrius писал(а):
27.04.2009 23:48
Складывается впечатление, что пакеты уходят из iptables, но до eth0 недоходят
т.е. tshark на eth0 их не показывает?
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
patrius
Сообщения: 337
ОС: Debian (4 & 5) -> Gentoo

Re: пропадания проходящего трафика

Сообщение patrius »

по всей видимости проблема заключалась в блоке питания WI-MAX антены.
покрайней мере после его замены ситуация заметно улучшилась.
будем ждать дальше
Спасибо сказали:
patrius
Сообщения: 337
ОС: Debian (4 & 5) -> Gentoo

Re: пропадания проходящего трафика

Сообщение patrius »

замена болка питания не помогла.
из этого следует, что проблема на стороне провайдера...
щас буду собирать материал для проверки и "стимулирования" провайдера.
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: пропадания проходящего трафика

Сообщение sash-kan »

wimax? случаем не yota?
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
patrius
Сообщения: 337
ОС: Debian (4 & 5) -> Gentoo

Re: пропадания проходящего трафика

Сообщение patrius »

sash-kan писал(а):
08.05.2009 05:35
wimax? случаем не yota?


если ты про оборудование, то я не в курсе какое установлено
Спасибо сказали: