LINUX.ORG.RU
ФорумAdmin

ping потери и диагностика сети

 ,


2

2

Привет ребята! Тут такая паранойя небольшая, не могу разобраться с диагностикой сети помогите. Есть шлюз на Debian около 500 человек выходят в сеть через него. На мониторинге заметил обрывы на аплинке. http://piccy.info/view3/9042188/dcaf553a74b4c4af234d97d8d5fcb343/

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

ping -v -c100 *.*.*.*
получаю от 1 до 4 % потерь, если увеличить размер пакета то потери увеличиваются. На других шлюзах аплинков иногда тоже бывает по 1% потерь.

Если пинговать свое оборудования в сети то потерь нет все окей.

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

На шлюзе ванильное ядро 3.18.23 патчилось ядро,iptables под imq это как-то может повлиять? Может фаервол на этот как-то повлиять или его неправильная настройка?

Скрипт проверки аплинков

#!/bin/bash

. /usr/net-conf/vars

arr_stat_isp=( )

for i in 1 2 3 4 5 6 7; do
  curtable=isp$i
  curint1=${curtable}_if
  curint2=${!curint1}
  curfwmark1=${curtable}_fwmark
  curfwmark2=${!curfwmark1}
  currule=$(ip rule | awk '/fwmark '$curfwmark2'/{print $7}')
  curip=$(ip a l $curint2 | grep "  inet " | head -n 1 | cut -d " " -f 6 | cut -d / -f 1)
  curdef=$(ip route | awk '/default/ && /'$curint2'/{print $5}')
  curgw=$(ip route show table $curtable | awk '/default/ && /'$curint2'/{print $3}')

  if ping -c1 -I $curip $pinghost; then

    arr_stat_isp+=([$i]=works)

    if [ "$curtable" = "$currule" ]; then
        echo "ip rule yes"
     else
#        echo "add ip rule"
        ip rule add fwmark $curfwmark2 table $curtable prio $prio_mark
        ip route flush cache
     fi

     if [ "$curint2" = "$curdef" ]; then
        echo "default route yes"
     else
#        echo "add default route"
        ip route add default via $curgw dev $curint2 metric $i
        ip route flush cache
     fi

  else

     arr_stat_isp+=([$i]=not_works)

     if [ "$curtable" = "$currule" ]; then
#        echo "ip rule yes"
        ip rule del fwmark $curfwmark2
        ip route flush cache
     else
        echo "no ip rule"
     fi

     if [ "$curint2" = "$curdef" ]; then
#        echo "default route yes"
        ip route del default via $curgw dev $curint2 metric $i
        ip route flush cache
     else
        echo "no default route"
     fi

  fi

done

flag=0

for i2 in "${arr_stat_isp[@]}"; do

    if [ "$i2" = "works" ]
       then
        flag=1
    fi

done

redirect2="$(iptables-save | awk '/'PREROUTING'/&&'/redirect2'/')"

if [ "$flag" -eq 0 ]; then
   echo "ничего не работает"

   if [ -z "$redirect2" ]; then
      echo "строка пустая"
      $IPT -w -t nat -A PREROUTING -i $clients_if -s $clients_ippool -j redirect2
      fi

   else
   echo "минимум 1 аплинк работает"

   if [ -n "$redirect2" ]; then
      echo "строка не пустая"
      $IPT -w -t nat -D PREROUTING -i $clients_if -s $clients_ippool -j redirect2
      fi
   fi

exit 0

iptables-save

iptables-save
# Generated by iptables-save v1.4.21 on Sat Nov 21 22:12:03 2015
*mangle
:PREROUTING ACCEPT [956223385:836581798825]
:INPUT ACCEPT [9849265:712417670]
:FORWARD ACCEPT [946313355:835864730969]
:OUTPUT ACCEPT [124518:71314230]
:POSTROUTING ACCEPT [946395895:835933065624]
:add_set_isp1 - [0:0]
:add_set_isp2 - [0:0]
:add_set_isp3 - [0:0]
:add_set_isp4 - [0:0]
:add_set_isp5 - [0:0]
:add_set_isp6 - [0:0]
:add_set_isp7 - [0:0]
:balancing - [0:0]
:class_imq0_isp1 - [0:0]
:class_imq0_isp2 - [0:0]
:class_imq0_isp3 - [0:0]
:class_imq1_isp1 - [0:0]
:class_imq1_isp2 - [0:0]
:class_imq1_isp3 - [0:0]
:ipt_isp1 - [0:0]
:ipt_isp2 - [0:0]
:ipt_isp3 - [0:0]
:ipt_isp4 - [0:0]
:ipt_isp5 - [0:0]
:ipt_isp6 - [0:0]
:ipt_isp7 - [0:0]
-A PREROUTING -s 10.193.0.0/16 -i ppp+ -j NETFLOW
-A PREROUTING -s 10.193.0.0/16 -i ppp+ -m conntrack --ctstate NEW -m set --match-set ALLOWED src -j balancing
-A PREROUTING -s 10.193.0.0/16 -i vlan10 -m conntrack --ctstate NEW -j balancing
-A PREROUTING -s 10.192.0.0/16 -i vlan10 -m conntrack --ctstate NEW -j balancing
-A PREROUTING -m set --match-set isp1 src -j ipt_isp1
-A PREROUTING -m set --match-set isp2 src -j ipt_isp2
-A PREROUTING -m set --match-set isp3 src -j ipt_isp3
-A PREROUTING -m set --match-set isp4 src -j ipt_isp4
-A PREROUTING -m set --match-set isp5 src -j ipt_isp5
-A PREROUTING -m set --match-set isp6 src -j ipt_isp6
-A PREROUTING -m set --match-set isp7 src -j ipt_isp7
-A PREROUTING -i ppp10001 -m conntrack --ctstate NEW -j CONNMARK --set-xmark 0x1/0xffffffff
-A PREROUTING -i ppp10002 -m conntrack --ctstate NEW -j CONNMARK --set-xmark 0x2/0xffffffff
-A PREROUTING -i vlan9 -m conntrack --ctstate NEW -j CONNMARK --set-xmark 0x3/0xffffffff
-A PREROUTING -i vlan13 -m conntrack --ctstate NEW -j CONNMARK --set-xmark 0x4/0xffffffff
-A PREROUTING -i ppp10005 -m conntrack --ctstate NEW -j CONNMARK --set-xmark 0x5/0xffffffff
-A PREROUTING -i ppp10006 -m conntrack --ctstate NEW -j CONNMARK --set-xmark 0x6/0xffffffff
-A PREROUTING -i ppp10007 -m conntrack --ctstate NEW -j CONNMARK --set-xmark 0x7/0xffffffff
-A PREROUTING -j CONNMARK --restore-mark --nfmask 0xffffffff --ctmask 0xffffffff
-A FORWARD -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
-A POSTROUTING -d 10.193.0.0/16 -o ppp+ -j NETFLOW
-A add_set_isp1 -j SET --add-set isp1 src
-A add_set_isp2 -m set --match-set isp1 src -j RETURN
-A add_set_isp2 -j SET --add-set isp2 src
-A add_set_isp3 -m set --match-set isp1 src -j RETURN
-A add_set_isp3 -m set --match-set isp2 src -j RETURN
-A add_set_isp3 -j SET --add-set isp3 src
-A add_set_isp4 -m set --match-set isp1 src -j RETURN
-A add_set_isp4 -m set --match-set isp2 src -j RETURN
-A add_set_isp4 -m set --match-set isp3 src -j RETURN
-A add_set_isp4 -j SET --add-set isp4 src
-A add_set_isp5 -m set --match-set isp1 src -j RETURN
-A add_set_isp5 -m set --match-set isp2 src -j RETURN
-A add_set_isp5 -m set --match-set isp3 src -j RETURN
-A add_set_isp5 -m set --match-set isp4 src -j RETURN
-A add_set_isp5 -j SET --add-set isp5 src
-A add_set_isp6 -m set --match-set isp1 src -j RETURN
-A add_set_isp6 -m set --match-set isp2 src -j RETURN
-A add_set_isp6 -m set --match-set isp3 src -j RETURN
-A add_set_isp6 -m set --match-set isp4 src -j RETURN
-A add_set_isp6 -m set --match-set isp5 src -j RETURN
-A add_set_isp6 -j SET --add-set isp6 src
-A add_set_isp7 -m set --match-set isp1 src -j RETURN
-A add_set_isp7 -m set --match-set isp2 src -j RETURN
-A add_set_isp7 -m set --match-set isp3 src -j RETURN
-A add_set_isp7 -m set --match-set isp4 src -j RETURN
-A add_set_isp7 -m set --match-set isp5 src -j RETURN
-A add_set_isp7 -m set --match-set isp6 src -j RETURN
-A add_set_isp7 -j SET --add-set isp7 src
-A balancing -m set --match-set isp1 src -j RETURN
-A balancing -m set --match-set isp2 src -j RETURN
-A balancing -m set --match-set isp3 src -j RETURN
-A balancing -m set --match-set isp4 src -j RETURN
-A balancing -m set --match-set isp5 src -j RETURN
-A balancing -m set --match-set isp6 src -j RETURN
-A balancing -m set --match-set isp7 src -j RETURN
-A balancing -m statistic --mode random --probability 0.14300000016 -j add_set_isp1
-A balancing -m statistic --mode random --probability 0.16699999990 -j add_set_isp2
-A balancing -m statistic --mode random --probability 0.20000000019 -j add_set_isp3
-A balancing -m statistic --mode random --probability 0.25000000000 -j add_set_isp4
-A balancing -m statistic --mode random --probability 0.33300000010 -j add_set_isp5
-A balancing -m statistic --mode random --probability 0.50000000000 -j add_set_isp6
-A balancing -j add_set_isp7
-A class_imq0_isp1 -j CLASSIFY --set-class 0001:0103
-A class_imq0_isp1 -p icmp -j CLASSIFY --set-class 0001:0101
-A class_imq0_isp1 -p tcp -m multiport --sports 22,53,953 -j CLASSIFY --set-class 0001:0101
-A class_imq0_isp1 -p tcp -m multiport --dports 22,53,953 -j CLASSIFY --set-class 0001:0101
-A class_imq0_isp1 -p udp -m multiport --sports 22,53,953 -j CLASSIFY --set-class 0001:0101
-A class_imq0_isp1 -p udp -m multiport --dports 22,53,953 -j CLASSIFY --set-class 0001:0101
-A class_imq0_isp1 -p tcp -m multiport --sports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0102
-A class_imq0_isp1 -p tcp -m multiport --dports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0102
-A class_imq0_isp1 -p udp -m multiport --sports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0102
-A class_imq0_isp1 -p udp -m multiport --dports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0102
-A class_imq0_isp1 -m set --match-set speedtest dst -j CLASSIFY --set-class 0001:0101
-A class_imq0_isp2 -j CLASSIFY --set-class 0001:0203
-A class_imq0_isp2 -p icmp -j CLASSIFY --set-class 0001:0201
-A class_imq0_isp2 -p tcp -m multiport --sports 22,53,953 -j CLASSIFY --set-class 0001:0201
-A class_imq0_isp2 -p tcp -m multiport --dports 22,53,953 -j CLASSIFY --set-class 0001:0201
-A class_imq0_isp2 -p udp -m multiport --sports 22,53,953 -j CLASSIFY --set-class 0001:0201
-A class_imq0_isp2 -p udp -m multiport --dports 22,53,953 -j CLASSIFY --set-class 0001:0201
-A class_imq0_isp2 -p tcp -m multiport --sports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0202
-A class_imq0_isp2 -p tcp -m multiport --dports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0202
-A class_imq0_isp2 -p udp -m multiport --sports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0202
-A class_imq0_isp2 -p udp -m multiport --dports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0202
-A class_imq0_isp2 -m set --match-set speedtest dst -j CLASSIFY --set-class 0001:0201
-A class_imq0_isp3 -j CLASSIFY --set-class 0001:0303
-A class_imq0_isp3 -p icmp -j CLASSIFY --set-class 0001:0301
-A class_imq0_isp3 -p tcp -m multiport --sports 22,53,953 -j CLASSIFY --set-class 0001:0301
-A class_imq0_isp3 -p tcp -m multiport --dports 22,53,953 -j CLASSIFY --set-class 0001:0301
-A class_imq0_isp3 -p udp -m multiport --sports 22,53,953 -j CLASSIFY --set-class 0001:0301
-A class_imq0_isp3 -p udp -m multiport --dports 22,53,953 -j CLASSIFY --set-class 0001:0301
-A class_imq0_isp3 -p tcp -m multiport --sports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0302
-A class_imq0_isp3 -p tcp -m multiport --dports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0302
-A class_imq0_isp3 -p udp -m multiport --sports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0302
-A class_imq0_isp3 -p udp -m multiport --dports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0302
-A class_imq0_isp3 -m set --match-set speedtest dst -j CLASSIFY --set-class 0001:0301
-A class_imq1_isp1 -j CLASSIFY --set-class 0001:0013
-A class_imq1_isp1 -p icmp -j CLASSIFY --set-class 0001:0011
-A class_imq1_isp1 -p tcp -m multiport --sports 22,53,953 -j CLASSIFY --set-class 0001:0011
-A class_imq1_isp1 -p tcp -m multiport --dports 22,53,953 -j CLASSIFY --set-class 0001:0011
-A class_imq1_isp1 -p udp -m multiport --sports 22,53,953 -j CLASSIFY --set-class 0001:0011
-A class_imq1_isp1 -p udp -m multiport --dports 22,53,953 -j CLASSIFY --set-class 0001:0011
-A class_imq1_isp1 -p tcp -m multiport --sports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0012
-A class_imq1_isp1 -p tcp -m multiport --dports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0012
-A class_imq1_isp1 -p udp -m multiport --sports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0012
-A class_imq1_isp1 -p udp -m multiport --dports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0012
-A class_imq1_isp1 -m set --match-set speedtest src -j CLASSIFY --set-class 0001:0011
-A class_imq1_isp2 -j CLASSIFY --set-class 0001:0023
-A class_imq1_isp2 -p icmp -j CLASSIFY --set-class 0001:0021
-A class_imq1_isp2 -p tcp -m multiport --sports 22,53,953 -j CLASSIFY --set-class 0001:0021
-A class_imq1_isp2 -p tcp -m multiport --dports 22,53,953 -j CLASSIFY --set-class 0001:0021
-A class_imq1_isp2 -p udp -m multiport --sports 22,53,953 -j CLASSIFY --set-class 0001:0021
-A class_imq1_isp2 -p udp -m multiport --dports 22,53,953 -j CLASSIFY --set-class 0001:0021
-A class_imq1_isp2 -p tcp -m multiport --sports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0022
-A class_imq1_isp2 -p tcp -m multiport --dports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0022
-A class_imq1_isp2 -p udp -m multiport --sports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0022
-A class_imq1_isp2 -p udp -m multiport --dports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0022
-A class_imq1_isp2 -m set --match-set speedtest src -j CLASSIFY --set-class 0001:0021
-A class_imq1_isp3 -j CLASSIFY --set-class 0001:0033
-A class_imq1_isp3 -p icmp -j CLASSIFY --set-class 0001:0031
-A class_imq1_isp3 -p tcp -m multiport --sports 22,53,953 -j CLASSIFY --set-class 0001:0031
-A class_imq1_isp3 -p tcp -m multiport --dports 22,53,953 -j CLASSIFY --set-class 0001:0031
-A class_imq1_isp3 -p udp -m multiport --sports 22,53,953 -j CLASSIFY --set-class 0001:0031
-A class_imq1_isp3 -p udp -m multiport --dports 22,53,953 -j CLASSIFY --set-class 0001:0031
-A class_imq1_isp3 -p tcp -m multiport --sports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0032
-A class_imq1_isp3 -p tcp -m multiport --dports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0032
-A class_imq1_isp3 -p udp -m multiport --sports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0032
-A class_imq1_isp3 -p udp -m multiport --dports 80,443,110,25,143,220 -j CLASSIFY --set-class 0001:0032
-A class_imq1_isp3 -m set --match-set speedtest src -j CLASSIFY --set-class 0001:0031
-A ipt_isp1 -j CONNMARK --set-xmark 0x1/0xffffffff
-A ipt_isp1 -j SET --add-set isp1 src --exist
-A ipt_isp2 -j CONNMARK --set-xmark 0x2/0xffffffff
-A ipt_isp2 -j SET --add-set isp2 src --exist
-A ipt_isp3 -j CONNMARK --set-xmark 0x3/0xffffffff
-A ipt_isp3 -j SET --add-set isp3 src --exist
-A ipt_isp4 -j CONNMARK --set-xmark 0x4/0xffffffff
-A ipt_isp4 -j SET --add-set isp4 src --exist
-A ipt_isp5 -j CONNMARK --set-xmark 0x5/0xffffffff
-A ipt_isp5 -j SET --add-set isp5 src --exist
-A ipt_isp6 -j CONNMARK --set-xmark 0x6/0xffffffff
-A ipt_isp6 -j SET --add-set isp6 src --exist
-A ipt_isp7 -j CONNMARK --set-xmark 0x7/0xffffffff
-A ipt_isp7 -j SET --add-set isp7 src --exist
COMMIT
# Completed on Sat Nov 21 22:12:03 2015
# Generated by iptables-save v1.4.21 on Sat Nov 21 22:12:03 2015
*nat
:PREROUTING ACCEPT [18681272:1333376593]
:INPUT ACCEPT [12014:768269]
:OUTPUT ACCEPT [31309:2882521]
:POSTROUTING ACCEPT [23115:2187998]
:redirect - [0:0]
:redirect2 - [0:0]
-A PREROUTING -s 10.193.0.0/16 -i ppp+ -j redirect
-A PREROUTING -d *.*.*.*/32 -p tcp -m multiport --dports 80,443 -j DNAT --to-destination 172.19.0.1
-A PREROUTING -d *.*.*.*/32 -p tcp -m multiport --dports 6036,50000 -j DNAT --to-destination 10.193.0.1
-A PREROUTING -d *.*.*.*/32 -p tcp -m multiport --dports 50001,50002 -j DNAT --to-destination 10.193.0.2
-A PREROUTING -d *.*.*.*/32 -p tcp -m multiport --dports 50004,50005 -j DNAT --to-destination 10.193.0.3
-A PREROUTING -d *.*.*.*/32 -p tcp -m multiport --dports 50006,50007 -j DNAT --to-destination 10.193.0.4
-A PREROUTING -d *.*.*.*/32 -p udp -m multiport --dports 50006,50007 -j DNAT --to-destination 10.193.0.4
-A PREROUTING -d *.*.*.*/32 -p tcp -m multiport --dports 50008,50029 -j DNAT --to-destination 10.193.0.6
-A PREROUTING -d *.*.*.*/32 -p tcp -m multiport --dports 50009,50010,50012 -j DNAT --to-destination 10.193.0.5
-A PREROUTING -d *.*.*.*/32 -p tcp -m multiport --dports 50013 -j DNAT --to-destination 10.193.0.5:80
-A PREROUTING -d *.*.*.*/32 -p tcp -m multiport --dports 50014,50015,50050 -j DNAT --to-destination 10.193.0.7
-A PREROUTING -d *.*.*.*/32 -p tcp -m multiport --dports 50016,50017,50025 -j DNAT --to-destination 10.193.0.8
-A PREROUTING -d *.*.*.*/32 -p tcp -m multiport --dports 50027,50028 -j DNAT --to-destination 10.193.0.9
-A PREROUTING -d *.*.*.*/32 -p tcp -m multiport --dports 50029,50030,50031,50032 -j DNAT --to-destination 10.193.0.11
-A PREROUTING -d *.*.*.*/32 -p tcp -m multiport --dports 50033,50034,50035,50036 -j DNAT --to-destination 10.193.0.13
-A OUTPUT -d *.*.*.*/32 -p tcp -m multiport --dports 80,443 -j DNAT --to-destination 172.19.0.1
-A OUTPUT -d *.*.*.*/32 -p tcp -m multiport --dports 6036,50000 -j DNAT --to-destination 10.193.0.1
-A OUTPUT -d *.*.*.*/32 -p tcp -m multiport --dports 50001,50002 -j DNAT --to-destination 10.193.0.2
-A OUTPUT -d *.*.*.*/32 -p tcp -m multiport --dports 50004,50005 -j DNAT --to-destination 10.193.0.3
-A OUTPUT -d *.*.*.*/32 -p tcp -m multiport --dports 50006,50007 -j DNAT --to-destination 10.193.0.4
-A OUTPUT -d *.*.*.*/32 -p udp -m multiport --dports 50006,50007 -j DNAT --to-destination 10.193.0.4
-A OUTPUT -d *.*.*.*/32 -p tcp -m multiport --dports 50008,50029 -j DNAT --to-destination 10.193.0.6
-A OUTPUT -d *.*.*.*/32 -p tcp -m multiport --dports 50009,50010,50012 -j DNAT --to-destination 10.193.0.5
-A OUTPUT -d *.*.*.*/32 -p tcp -m multiport --dports 50013 -j DNAT --to-destination 10.193.0.5:80
-A OUTPUT -d *.*.*.*/32 -p tcp -m multiport --dports 50014,50015,50050 -j DNAT --to-destination 10.193.0.7
-A OUTPUT -d *.*.*.*/32 -p tcp -m multiport --dports 50016,50017,50025 -j DNAT --to-destination 10.193.0.8
-A OUTPUT -d *.*.*.*/32 -p tcp -m multiport --dports 50027,50028 -j DNAT --to-destination 10.193.0.9
-A OUTPUT -d *.*.*.*/32 -p tcp -m multiport --dports 50029,50030,50031,50032 -j DNAT --to-destination 10.193.0.11
-A OUTPUT -d *.*.*.*/32 -p tcp -m multiport --dports 50033,50034,50035,50036 -j DNAT --to-destination 10.193.0.13
-A POSTROUTING -o ppp10001 -j MASQUERADE
-A POSTROUTING -o ppp10002 -j MASQUERADE
-A POSTROUTING -o vlan9 -j MASQUERADE
-A POSTROUTING -o vlan13 -j MASQUERADE
-A POSTROUTING -o ppp10005 -j MASQUERADE
-A POSTROUTING -o ppp10006 -j MASQUERADE
-A POSTROUTING -o ppp10007 -j MASQUERADE
-A POSTROUTING -d 172.19.0.0/24 -o vlan10 -j MASQUERADE
-A POSTROUTING -s 10.193.0.0/16 -d 172.19.0.1/32 -p tcp -m multiport --dports 80,443 -j SNAT --to-source 172.31.1.254
-A POSTROUTING -s 10.193.0.0/16 -d 10.193.0.1/32 -p tcp -m multiport --dports 6036,50000 -j SNAT --to-source 172.31.1.254
-A POSTROUTING -s 10.193.0.0/16 -d 10.193.0.2/32 -p tcp -m multiport --dports 50001,50002 -j SNAT --to-source 172.31.1.254
-A POSTROUTING -s 10.193.0.0/16 -d 10.193.0.3/32 -p tcp -m multiport --dports 50004,50005 -j SNAT --to-source 172.31.1.254
-A POSTROUTING -s 10.193.0.0/16 -d 10.193.0.4/32 -p tcp -m multiport --dports 50006,50007 -j SNAT --to-source 172.31.1.254
-A POSTROUTING -s 10.193.0.0/16 -d 10.193.0.4/32 -p udp -m multiport --dports 50006,50007 -j SNAT --to-source 172.31.1.254
-A POSTROUTING -s 10.193.0.0/16 -d 10.193.0.6/32 -p tcp -m multiport --dports 50008,50029 -j SNAT --to-source 172.31.1.254
-A POSTROUTING -s 10.193.0.0/16 -d 10.193.0.5/32 -p tcp -m multiport --dports 50009,50010,50012 -j SNAT --to-source 172.31.1.254
-A POSTROUTING -s 10.193.0.0/16 -d 10.193.0.5/32 -p tcp -m multiport --dports 80 -j SNAT --to-source 172.31.1.254
-A POSTROUTING -s 10.193.0.0/16 -d 10.193.0.7/32 -p tcp -m multiport --dports 50014,50015,50050 -j SNAT --to-source 172.31.1.254
-A POSTROUTING -s 10.193.0.0/16 -d 10.193.0.8/32 -p tcp -m multiport --dports 50016,50017,50025 -j SNAT --to-source 172.31.1.254
-A POSTROUTING -s 10.193.0.0/16 -d 10.193.0.9/32 -p tcp -m multiport --dports 50027,50028 -j SNAT --to-source 172.31.1.254
-A POSTROUTING -s 10.193.0.0/16 -d 10.193.0.11/32 -p tcp -m multiport --dports 50029,50030,50031,50032 -j SNAT --to-source 172.31.1.254
-A POSTROUTING -s 10.193.0.0/16 -d 10.193.0.13/32 -p tcp -m multiport --dports 50033,50034,50035,50036 -j SNAT --to-source 172.31.1.254
-A redirect -m set --match-set ALLOWED src -j RETURN
-A redirect -m set --match-set liqpay dst -j RETURN
-A redirect -d 172.30.0.1/32 -j RETURN
-A redirect -d 172.30.1.1/32 -j RETURN
-A redirect -d *.*.*.*/32 -j RETURN
-A redirect -p tcp -j DNAT --to-destination 172.30.1.1:8080
-A redirect -p udp -j DNAT --to-destination 172.30.1.1:8080
-A redirect2 -d 172.30.0.1/32 -j RETURN
-A redirect2 -d 172.30.1.1/32 -j RETURN
-A redirect2 -d *.*.*.*/32 -j RETURN
-A redirect2 -p tcp -j DNAT --to-destination 172.30.1.1:8081
-A redirect2 -p udp -j DNAT --to-destination 172.30.1.1:8081
COMMIT
# Completed on Sat Nov 21 22:12:03 2015
# Generated by iptables-save v1.4.21 on Sat Nov 21 22:12:03 2015
*filter
:INPUT DROP [9568763:651070390]
:FORWARD DROP [124:7420]
:OUTPUT ACCEPT [122785:70314662]
:forwarding - [0:0]
:incoming - [0:0]
-A INPUT -m conntrack --ctstate INVALID -j DROP
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -m conntrack --ctstate NEW -j incoming
-A FORWARD -m conntrack --ctstate INVALID -j DROP
-A FORWARD -j forwarding
-A OUTPUT -m conntrack --ctstate INVALID -j DROP
-A forwarding -s 10.193.0.50/32 -i ppp+ -m set --match-set ALLOWED src -j ACCEPT
-A forwarding -d 10.193.0.50/32 -o ppp+ -m set --match-set ALLOWED dst -j ACCEPT
-A forwarding -i ppp+ ! -o vlan10 -m set --match-set ALLOWED src -j ACCEPT
-A forwarding ! -i vlan10 -o ppp+ -m set --match-set ALLOWED dst -j ACCEPT
-A forwarding -s 10.193.0.0/16 -i ppp+ ! -o vlan10 -m set --match-set liqpay dst -j ACCEPT
-A forwarding -d 10.193.0.0/16 ! -i vlan10 -o ppp+ -m set --match-set liqpay src -j ACCEPT
-A forwarding -i vlan10 -j ACCEPT
-A forwarding -o vlan10 -j ACCEPT
-A incoming -i ppp10001 -j RETURN
-A incoming -i ppp10002 -j RETURN
-A incoming -i vlan9 -j RETURN
-A incoming -i ppp10005 -j RETURN
-A incoming -i ppp10006 -j RETURN
-A incoming -i ppp10007 -j RETURN
-A incoming -i lo -j ACCEPT
-A incoming -s 10.193.0.50/32 -j ACCEPT
-A incoming -i vlan10 -p tcp -m multiport --dports 22 -j ACCEPT
-A incoming -p tcp -m multiport --dports 53,80,443,953 -j ACCEPT
-A incoming -p udp -m multiport --dports 53 -j ACCEPT
-A incoming -p icmp -j ACCEPT
COMMIT
# Completed on Sat Nov 21 22:12:03 2015



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

Пингуя этот шлюз получаю от 1 до 4 % потерь,

Какой шлюз, который на дебиан? Откуда пингуете, с локальной сети или через интернет? И какая загрузка процессора шлюза?

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

Нет, шлюз провайдера. Все операции с локальной сети. Указанные потери получаю пингуя с консоли своего шлюза шлюз провайдера, такие же потери если пингую через свой шлюз, как клиент, шлюз провайдера. Если пингую свой шлюз то все окей.

Процессор - больше 10% не видел.

fet4
() автор топика
Ответ на: комментарий от fet4
netstat -s
Ip:
    3816005684 total packets received
    36476 with invalid headers
    3771179359 forwarded
    0 incoming packets discarded
    1980411 incoming packets delivered
    3773999241 requests sent out
    13685 outgoing packets dropped
    70696 dropped because of missing route
    30848 fragments dropped after timeout
    11389481 reassemblies required
    5026702 packets reassembled ok
    490730 packet reassembles failed
    876812 fragments received ok
    74 fragments failed
    1769016 fragments created
Icmp:
    30337 ICMP messages received
    305 input ICMP message failed.
    ICMP input histogram:
        destination unreachable: 1894
        redirects: 12
        echo requests: 427
        echo replies: 28004
    1398489 ICMP messages sent
    0 ICMP messages failed
    ICMP output histogram:
        destination unreachable: 1321703
        time exceeded: 47694
        redirect: 118
        echo request: 28547
        echo replies: 427
IcmpMsg:
        InType0: 28004
        InType3: 1894
        InType5: 12
        InType8: 427
        OutType0: 427
        OutType3: 1321703
        OutType5: 118
        OutType8: 28547
        OutType11: 47694
Tcp:
    368 active connections openings
    2333 passive connection openings
    138 failed connection attempts
    262 connection resets received
    1 connections established
    779837 segments received
    799100 segments send out
    11763 segments retransmited
    0 bad segments received.
    661659 resets sent
Udp:
    611873 packets received
    543440 packets to unknown port received.
    0 packet receive errors
    635563 packets sent
UdpLite:
TcpExt:
    3 invalid SYN cookies received
    26 resets received for embryonic SYN_RECV sockets
    1594 TCP sockets finished time wait in fast timer
    1844 delayed acks sent
    1 delayed acks further delayed because of locked socket
    Quick ack mode was activated 20 times
    27 packets directly queued to recvmsg prequeue.
    15 bytes directly received in process context from prequeue
    11698 packet headers predicted
    34266 acknowledgments not containing data payload received
    20078 predicted acknowledgments
    7 times recovered from packet loss by selective acknowledgements
    1 congestion windows recovered without slow start after partial ack
    36 fast retransmits
    5 forward retransmits
    2 retransmits in slow start
    9627 other TCP timeouts
    TCPLossProbes: 331
    TCPLossProbeRecovery: 219
    1 SACK retransmits failed
    20 DSACKs sent for old packets
    282 DSACKs received
    246 connections reset due to unexpected data
    13 connections aborted due to timeout
    TCPDSACKIgnoredNoUndo: 219
    TCPSackMerged: 1
    TCPSackShiftFallback: 45
    TCPDeferAcceptDrop: 2170
    TCPRetransFail: 5
    TCPRcvCoalesce: 1658
    TCPOFOQueue: 4
    TCPAutoCorking: 4768
    TCPSynRetrans: 11247
    TCPOrigDataSent: 108502
IpExt:
    InNoRoutes: 948
    InMcastPkts: 5072
    InBcastPkts: 513289
    InOctets: 3414108415132
    OutOctets: 6813018763096
    InMcastOctets: 142016
    InBcastOctets: 209042023
    InCsumErrors: 33
    InNoECTPkts: 4011399469
    InECT1Pkts: 155551
    InECT0Pkts: 1112981
    InCEPkts: 899209
 netstat -i
Kernel Interface table
Iface   MTU Met   RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
bond0      1500 0  4015479292      0      0 0      3971939803      0      2      0 BMmRU
eth0       1500 0         0      0      0 0             0      0      0      0 BMU
eth0:1     1500 0       - no statistics available -                        BMU
eth1       1500 0  3089884802      0      0 0      631868322      0      0      0 BMsRU
eth2       1500 0  925594492      0      0 0      3340071486      0      0      0 BMsRU
imq0      16000 0  212052578      0      0 0      213082275      0      0      0 ORU
imq1      16000 0  13938547      0      0 0      13942908      0      0      0 ORU
lo        65536 0    333566      0      0 0        333566      0      0      0 LRU
ppp1       1480 0    894703      0      0 0       2010793      0      0      0 PRU
ppp2       1480 0   9119325      0      0 0      17499720      0      0      0 MOPRU
ppp3       1492 0   1095445      0      0 0       2398738      0      0      0 MOPRU
ppp4       1480 0    219065      0      0 0        302394      0      0      0 PRU
ppp10001   1492 0  513272999      0      0 0      378044282      0      0      0 MOPRU
ppp10002   1492 0  113113502      0      0 0      76405051      0      0      0 MOPRU
ppp10005   1492 0  312029272      0      0 0      231071961      0      0      0 MOPRU
ppp10006   1492 0  274028809      0      0 0      172413214      0      0      0 MOPRU
ppp10007   1492 0  261136527      0      0 0      159263708      0      0      0 MOPRU
vlan9      1500 0  266647403      0      0 0      173994566      0      0      0 BMRU
vlan10     1500 0  1520427407      0      0 0      2331661189      0      0      0 BMRU
vlan11     1500 0  513289998      0      0 0      378061283      0      0      0 BMRU
vlan12     1500 0  279399227      0      0 0      168914720      0      0      0 BMRU
vlan13     1500 0  389537372      0      0 0      356505275      0      0      0 BMRU
vlan14     1500 0  312041759      0      0 0      231084296      0      0      0 BMRU
vlan15     1500 0  274041219      0      0 0      172425504      0      0      0 BMRU
vlan16     1500 0  261148919      0      0 0      159275987      0      0      0 BMRU
fet4
() автор топика
Ответ на: комментарий от fet4

Многие маршрутизаторы имеют ограничение по числу генерируемых icmp-пакетов в единицу времени, поэтому, получается, что их ответ на ping не гарантирован.

Я бы заменил просто ″ping″ такой конструкцией:

ping -c 3 -w 5 -I ... | grep '^64 bytes from' -q -s

Что если, хотя бы один из трёх пингов прошёл, то нормально. Или кроме шлюза пинговать что-нибудь за шлюзом тот же 8.8.8.8, или можно сделать в iptables правила-счётчики для каждого интерфейса для пакетов размером более 1000 байт и смотреть, растёт ли счётчик. Большие пакеты, ИМХО, признак нормальной работы линка, так как всякие host unreachable и tcp rst заметно меньше. И пинг вызвать только если счётчик с прошлого раза не изменялся.

Посмотрел ваш скрипт, не совсем понял, а что $pinghost не меняется, вы пытаетесь его пинговать через разные аплинки?

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

на незагруженном канале проверял?

Если используется шейпинг (imq ведь для этого поднят), то что происходит с пакетами не влезающими в свою очередь ? Правильно, их отбрасывают. А не попадают ли твои пинги в шейпер ?

Со стороны провайдера может быть ограничение на pps/bps icmp. Но это легко проверить уменьшив задержку между пингами.

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

Что если, хотя бы один из трёх пингов прошёл, то нормально

Так и сделаю.

Нет $pinghost это тот самый 8.8.8.8. На него я и увидел потери, потом просто проверив потери на шлюз, пришел к выводу что проблема между мной и маршрутизатором провайдера.

А может мешать другой скрипт с пингом через этот канал? Все они запускаются раз в 5 мин. по крону, допустим если они пересекаются при выполнении ничего страшного?

#!/bin/bash

. /usr/net-conf/vars

for i in 3 4; do
   dhcp_if2=isp${i}_if
   dhcp_if=${!dhcp_if2}
   dhcp_ip=$(ip a l $dhcp_if | grep "  inet " | head -n 1 | cut -d " " -f 6 | cut -d / -f 1)

   if ping -c4 -I $dhcp_ip $pinghost; then
      echo "ALL GOOD"
   else
      echo "Not work. DHCP on $dhcp_if RENEW"
      dhclient -r $dhcp_if
      dhclient $dhcp_if
   fi

done

exit 0

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

на незагруженном канале проверял?

Ну в переделах 10-20%

Если используется шейпинг (imq ведь для этого поднят), то что происходит с пакетами не влезающими в свою очередь ? Правильно, их отбрасывают. А не попадают ли твои пинги в шейпер ?

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

Со стороны провайдера может быть ограничение на pps/bps icmp. Но это легко проверить уменьшив задержку между пингами.

Проверю.

fet4
() автор топика

Знакомая ситуация, мое решение команда для пинга: ping -q -c 2 -I eth2 АДРЕС_ШЛЮЗА

Проверка доступности шлюза идет через 10 секунд. При отсутствии пинга сразу не переключаюсь, а накапливаю ошибки. По истечению 5 ошибок переключаюсь и сбрасываю счетчик ошибок. Алгоритм работает около 5 лет..

tyrpyr
()
Ответ на: комментарий от fet4

Потери 10-20% IMHO овердофига, если оно не режется с другой стороны.

Я обычно использую arping, если нужно проверить живость узла в непосредственно подключенной сети. Для nagios

    if arping -c 5 -i 0.2 -w 2 -q "${1}" ; then
        echo "OK"
        exit 0
    else
        echo "DOWN"
        exit 2
    fi
Только arping у меня немного подправлен - он сам определяет имя интерфейса с которого нужно выполнять запрос. Через «ip ro get» можно определить имя устройства зная его адрес.

Я бы только на ping/arping не ориентировался, я бы сделал пару правил в iptables и смотрел на трафик. Если трафик пропадает, тогда ping/arping и только после этого принимал решение о переключении.

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

а dmesg не смотрел? может там что-то есть полезное.

vel ★★★★★
()

Тред не читал но для линуксового роутера можно подкручивать net.ipv4.icmp_ratelimit, если нужно чтобы он всегда отвечал на icmp.

UPD: прочитал что не отвечает шлюз аплинка, тогда это не поможет. Но по сути это нормальная ситуация.

ventilator ★★★
()
Последнее исправление: ventilator (всего исправлений: 1)
Ответ на: комментарий от fet4

А может мешать другой скрипт с пингом через этот канал?

Если пингуется сервер, то не должен. Я писал именно про пингование аппаратных маршрутизаторов, которые, на моём опыте, часто игнорируют пинги (когда их долбят со всех сторон).

Я бы запустил 2-3 пинга на разные адреса с записью в файл с выводом даты ответов (опция ″-D″ или ping 8.8.8.8 | awk '{if($0 ~ /bytes from/){print strftime()" | "$0}else print}') и ежесекундную запись счётчиков интерфейса, а потом бы за несколько суток посмотрел, может у провайдера действительно бывают провалы. Сохранять именно счётчик eth-интефейса, а не ещё что-то, так как он до imq и всяких шейпингов.

И это пропадаание пинга не связано с падением ppp-интерфейсов, а то может у вас там просто мудрёные скрипты, которые переписывая таблицы маршрутизации что-то ломают? Я бы во все скрипты при изменении таблиц маршрутизации, правил маршрутизации и iptables добавил запись в лог файл с указанием даты/времени.

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

Потери 10-20% IMHO овердофига, если оно не режется с другой стороны.

Это загрузка канала в процентах. А потери 1-3%

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

UPD: прочитал что не отвечает шлюз аплинка, тогда это не поможет. Но по сути это нормальная ситуация

Самое интересное, что потери одинаковы как на шлюз прова так и на 8.8.8.8 через данного прова. На 8.8.8.8 через других операторов все ок.

Я бы во все скрипты при изменении таблиц маршрутизации, правил маршрутизации и iptables

Да это собственно один скрипт. В нем добавляется/удаляется правило маршрутизации по метке, маршрут по умолчанию с метрикой и очищается кэш все.

Если пинг может резаться с другой стороны. Как всетаки проверять потери на физике или еще чем-то?

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

Самое интересное, что потери одинаковы как на шлюз прова так и на 8.8.8.8 через данного прова. На 8.8.8.8 через других операторов все ок.

Ну это похоже на проблемы провайдера, соберите статистику в момент проблемы c помошью mtr 8.8.8.8(желательно еще какой то дестинейшн попробовать) и вероятнее всего будет видно где потери.

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

Лови рыбку:

#!/bin/bash
# Скрипт проверки пингования
# 2 Провайдера (1 - статические адреса, 2 - через PPPoE)
# на PPPoE количество ошибок не считать (не к чему)
# Состояния старое / новое 0 - нет пинга, 1 -есть
NEWIF1=0
NEWIF2=0
OLDIF1=0
OLDIF2=0

# Максимальное количество ошибок, только потом переключаться
MAXERROR=5

# Количество ошибок пингования
ERRORIF1=0
ERRORIF2=0

while true; do

# проверка поднятия PPPoE на шлюзе 1
  S11=$(ifconfig -a | grep "ppp")

  if [ -z "$S11" ]; then
# ошибка
    NEWIF1=0
  else
    NEWIF1=1
  fi

# проверка пингом шлюза 2 (-q не выдавать ответы сервера: только результат)
# -c количество запросов
  ping -q -c 2 -I eth2 АДРЕС_ШЛЮЗА > /dev/null
  if [ $? -ne 0 ]; then
#  Смена состояния изменится когда количество ошибок пингования будет равно максимуму
  if (( ($ERRORIF2 >= $MAXERROR) )); then
     NEWIF2=0
   else
#     Увеличим счетчик ошибок
     let "ERRORIF2+=1"
   fi
 else
    NEWIF2=1
    ERRORIF2=0
 fi

#  произошло изменение состояния обоих шлюзов

   if (( ($NEWIF1!=$OLDIF1) || ($NEWIF2!=$OLDIF2) )); then

#    оба провайдера включились
     if (( ($NEWIF1==1) && ($NEWIF2==1) )); then
#      Чего-то делаем 
        ....      

#    только 1-ый провайдер
     elif (( ($NEWIF1==1) && ($NEWIF2==0) )); then
#      Чего-то делаем 
        ....      
#    только 2-ый провайдер
     elif (( ($NEWIF1==0) && ($NEWIF2==1) )); then
#      Чего-то делаем 
        ....      
     else
#      Конец интернету - Оба провайдера лежат :(
        ....
     fi
  fi

  OLDIF1=$NEWIF1
  OLDIF2=$NEWIF2

# спать 10 секунд
  sleep 10
done

tyrpyr
()
Ответ на: комментарий от vel

И ppp тоже. Проблемный через vlan. Вообще на моем шлюзе поднять транк (bond0) и на него уже через vlan все заводиться.

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

Спасибо за рыбку, применим под свои нужды.

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

а во что включен с другой стороны транк? Какого типа транк. нет ли проблем на коммутаторе в тот момент?

Когда оно не пингуется, то есть ли в arp-таблице нужные данные ? и есть ли на коммутаторе МАС-и ?

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

Мой шлюз, vlan13 на bond0 ---> LACP edge core 4612 ---> huawei 2326(1) ---> huawei 2326(2) ---> huawei 2326(3) ---> vlan13 > шлюз провайдера.

Нет на коммутаторе проблем нет, пингую параллельно huawei 2326(3) все окей. MAC адреса в нужном vlan есть, в том числе шлюза провайдера.

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

huawei 2326(3) умеет зеркалировать трафик? Понять где оно теряется можно анализируя данные на порту идущего к провайдеру.

Если от тебя пинг к нему уходит, а в ответ тишина - значит виноват провайдер. А если оно до него не доходит - значит косяк где-то внутри.

На сколько часто проблема проявляется?

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

Да умеет зеркалировать.

Понять где оно теряется можно анализируя данные на порту идущего к провайдеру.

Как раз этим и занимаюсь.

Если от тебя пинг к нему уходит, а в ответ тишина - значит виноват провайдер. А если оно до него не доходит - значит косяк где-то внутри.

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

Проблема постоянная потери 3-4%, arping показывает те же самые потери.

fet4
() автор топика
Ответ на: комментарий от fet4
>display interface-statistics Ethernet 0/0/24
Display statistics of the interface at the interval of 10 seconds for up to 5 times. Press Ctrl + C to stop.
  0 seconds left/
Times 1
Interface : Ethernet0/0/24
-------------------------------------------------------------------------
Input rate   :             20650251 bits/sec,                 2042 packets/sec
Output rate  :              4360236 bits/sec,                 1126 packets/sec
Input        :         930513164587 bytes,               839104274 packets
Output       :         353811267469 bytes,               585145090 packets
Input error  :                    1 packets
Output error :                    0 packets
Input bandwidth utilization  : 12.45%
Output bandwidth utilization : 2.47%

  0 seconds left\
Times 2
Interface : Ethernet0/0/24
-------------------------------------------------------------------------
Input rate   :              8910933 bits/sec,                 1101 packets/sec
Output rate  :              4762667 bits/sec,                  857 packets/sec
Input        :         930524303254 bytes,               839115284 packets
Output       :         353817220803 bytes,               585153663 packets
Input error  :                    1 packets
Output error :                    0 packets
Input bandwidth utilization  : 12.51%
Output bandwidth utilization : 2.59%

  0 seconds left|
Times 3
Interface : Ethernet0/0/24
-------------------------------------------------------------------------
Input rate   :             17803028 bits/sec,                 1770 packets/sec
Output rate  :              4232397 bits/sec,                 1099 packets/sec
Input        :         930546557039 bytes,               839132993 packets
Output       :         353822511300 bytes,               585164658 packets
Input error  :                    1 packets
Output error :                    0 packets
Input bandwidth utilization  : 12.91%
Output bandwidth utilization : 2.69%

  0 seconds left\
Times 4
Interface : Ethernet0/0/24
-------------------------------------------------------------------------
Input rate   :             13403762 bits/sec,                 1387 packets/sec
Output rate  :              2964404 bits/sec,                  796 packets/sec
Input        :         930563311742 bytes,               839146865 packets
Output       :         353826216806 bytes,               585172620 packets
Input error  :                    1 packets
Output error :                    0 packets
Input bandwidth utilization  : 13.03%
Output bandwidth utilization : 2.76%

  0 seconds left|
Times 5
Interface : Ethernet0/0/24
-------------------------------------------------------------------------
Input rate   :             12194181 bits/sec,                 1386 packets/sec
Output rate  :              4718716 bits/sec,                  958 packets/sec
Input        :         930578554469 bytes,               839160734 packets
Output       :         353832115201 bytes,               585182203 packets
Input error  :                    1 packets
Output error :                    0 packets
Input bandwidth utilization  : 13.06%
Output bandwidth utilization : 2.87%

fet4
() автор топика
Ответ на: комментарий от fet4
display interface Ethernet 0/0/24
Ethernet0/0/24 current state : UP
Line protocol current state : UP
Description:HUAWEI, Quidway Series, Ethernet0/0/24 Interface
Switch Port, PVID :    9, TPID : 8100(Hex), The Maximum Frame Length is 2044
IP Sending Frames' Format is PKTFMT_ETHNT_2, Hardware address is 04f9-38ca-cbb2
Port Mode: COMMON COPPER
Speed :  100,  Loopback: NONE
Duplex: FULL,  Negotiation: ENABLE
Mdi   : AUTO
Last 300 seconds input rate 13505816 bits/sec, 2355 packets/sec
Last 300 seconds output rate 3490384 bits/sec, 928 packets/sec
Input peak rate 99622792 bits/sec, Record time: 2008-02-11 05:23:14
Output peak rate 99882768 bits/sec, Record time: 2008-02-15 19:08:27
Input:  1424510082 packets, 930697270097 bytes
Unicast        :           824303122, Multicast          :             3747371
Broadcast      :            11210033, Jumbo              :                   0
CRC            :                   1, Giants             :                   0
Jabbers        :                   0, Fragments          :                   0
Runts          :                   0, DropEvents         :                   0
Alignments     :                   0, Symbols            :                   0
Ignoreds       :                   0, Frames             :                   0
Discard        :                   0, Total Error        :                   1
Output:  585249555 packets, 353864541356 bytes
Unicast        :           585211001, Multicast          :               34917
Broadcast      :                3637, Jumbo              :                   0
Collisions     :                   0, Deferreds          :                   0
Late Collisions:                   0, ExcessiveCollisions:                   0
Buffers Purged :                   0
Discard        :                   0, Total Error        :                   0
    Input bandwidth utilization threshold : 100.00%
    Output bandwidth utilization threshold: 100.00%
    Input bandwidth utilization  : 13.51%
    Output bandwidth utilization : 3.49%

Какой-то 1 error есть, а что оно значит?

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

Что интересное, перевел в ручной режим full 100 потери увеличились до 40%.

display interface Ethernet 0/0/24
Ethernet0/0/24 current state : UP
Line protocol current state : UP
Description:HUAWEI, Quidway Series, Ethernet0/0/24 Interface
Switch Port, PVID :    9, TPID : 8100(Hex), The Maximum Frame Length is 2044
IP Sending Frames' Format is PKTFMT_ETHNT_2, Hardware address is 04f9-38ca-cbb2
Port Mode: COMMON COPPER
Speed :  100,  Loopback: NONE
Duplex: FULL,  Negotiation: DISABLE
Mdi   : AUTO
Last 300 seconds input rate 14398360 bits/sec, 2306 packets/sec
Last 300 seconds output rate 1383552 bits/sec, 876 packets/sec
Input peak rate 99622792 bits/sec, Record time: 2008-02-11 05:23:14
Output peak rate 99882768 bits/sec, Record time: 2008-02-15 19:08:27
Input:  1430250341 packets, 935324183591 bytes
Unicast        :           827865673, Multicast          :             3749342
Broadcast      :            11218677, Jumbo              :                   0
CRC            :                 224, Giants             :                   0
Jabbers        :                   0, Fragments          :               10037
Runts          :                   0, DropEvents         :                   0
Alignments     :                 198, Symbols            :                   0
Ignoreds       :                   0, Frames             :                   0
Discard        :                   0, Total Error        :               10459
Output:  587406190 packets, 354585957523 bytes
Unicast        :           587367247, Multicast          :               34917

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

Знакомая ситуация, только я с ней сталкивался ооочень давно.

А что за канал между провайдером и твоим оборудованием ? Оптика ?

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

Что пробовать перетягивать другой кабель? Ну там и так нормальный, медь. Больше всего убивает что на ноуте работает.

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

Ну еще есть FlowControl, который редко кто включает. Хорошо бы убедиться, что он везде в одном состоянии (выключеном).

Проблема в том, что ты со своим ноутом создаешь совсем другую ситуацию в сравнении с 500 машинками в сети.

Длина очереди в коммутаторе провайдера ограничена и когда приходит одновременно много пакетов, то кто-то будет отброшен. Хорошо, если в первую очередь теряется icmp.

Если рассматривать работоспособность tcp, то потери до 5% почти незаметны.

Я бы перестал ориентироваться только на ping/arping. Раз коммутаторы у тебя управляемые, значит с них можно спрашивать счетчики и пока оба счетчика выше порогового значения, то ping не делать и считать канал живым.

Если есть возможность, то можно мониторить общее состояние huawei2326(3) - загрузку cpu,памяти, число записей в fdb. С коммутаторам хуавей я не сталкивался, так что не могу подсказать относительно их особенностей.

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

FlowControl выключен на порту, на магистральных был включен, выключение ничего не дало. Включил назад.

Используется nat на интерфейсе. В чем еще разница по сравнению с ноутом? В момент потерь нагрузка в переделах на 20 % на линию, в принципе если она простаивает потери те же.

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

Кстати есть еще один канал от этого же оператора в другом месте. Под нагрузкой с клиентами потерь нет.

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

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

Не пробовал включать в другие порты на huawei(3) или поменять этот коммутатор? А провайдер вменяемый? Попробовать поменять порт с его стороны (на время)?

nat на arping не влияет!

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

Хотя тем же спидтестом показывает стабильно 94 мбит без провалов, торрентом так же прокачивает под 10 мбайт. Что-то мне кажется что это просто роутер отбрасывает пакеты по icmp

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

Vlan13 на последнем коммутаторе статический, но на промежуточных летит по gvrp. Может ли этот протокол так сбоить ?

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

Выяснилось следующее.

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

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

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

Еще интереснее, зашел на предпоследний свич, а там стоит Alcatel 6224.

А мне там сыпит GVRP. Удаляет и следом добавляет все vlan, сравнил таймеры garp с другими одинаковые у всех. Вроде ж так не должно быть? И как раз в момент этих действий потери. Что может вызвать такое поведение gvrp?

.....
03-Mar-2000 11:37:00 %LINK-W-Down:  Vlan 112
03-Mar-2000 11:37:00 %VLAN-I-GVRPDelVlan: Dynamic VLAN Vlan 112 was removed by GVRP
03-Mar-2000 11:37:00 %VLAN-I-GVRPAddVlan: Dynamic VLAN Vlan 105 was added by GVRP
03-Mar-2000 11:37:00 %VLAN-I-GVRPAddPort: Dynamic port g2 was added to VLAN Vlan 105 by GVRP
03-Mar-2000 11:37:00 %LINK-I-Up:  Vlan 105
03-Mar-2000 11:37:00 %VLAN-I-GVRPAddVlan: Dynamic VLAN Vlan 106 was added by GVRP
03-Mar-2000 11:37:00 %VLAN-I-GVRPAddPort: Dynamic port g2 was added to VLAN Vlan 106 by GVRP
03-Mar-2000 11:37:00 %LINK-I-Up:  Vlan 106
03-Mar-2000 11:37:00 %VLAN-I-GVRPAddPort: Dynamic port g2 was added to VLAN Vlan 104 by GVRP
03-Mar-2000 11:37:00 %VLAN-I-GVRPAddPort: Dynamic port g2 was added to VLAN Vlan 9 by GVRP
03-Mar-2000 11:37:00 %VLAN-I-GVRPAddVlan: Dynamic VLAN Vlan 12 was added by GVRP
03-Mar-2000 11:37:00 %VLAN-I-GVRPAddPort: Dynamic port g2 was added to VLAN Vlan 12 by GVRP
03-Mar-2000 11:37:00 %LINK-I-Up:  Vlan 12
03-Mar-2000 11:37:00 %VLAN-I-GVRPAddVlan: Dynamic VLAN Vlan 107 was added by GVRP
03-Mar-2000 11:37:00 %VLAN-I-GVRPAddPort: Dynamic port g2 was added to VLAN Vlan 107 by GVRP
03-Mar-2000 11:37:00 %LINK-I-Up:  Vlan 107
03-Mar-2000 11:37:01 %VLAN-I-GVRPAddVlan: Dynamic VLAN Vlan 11 was added by GVRP
03-Mar-2000 11:37:01 %VLAN-I-GVRPAddPort: Dynamic port g2 was added to VLAN Vlan 11 by GVRP
03-Mar-2000 11:37:01 %LINK-I-Up:  Vlan 11
03-Mar-2000 11:37:01 %VLAN-I-GVRPAddVlan: Dynamic VLAN Vlan 100 was added by GVRP
....

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

Кто знает что это за ошибки?

GVRP Error Statistics:
----------------------
Legend:
  INVPROT  : Invalid Protocol Id
  INVATYP  : Invalid Attribute Type  INVALEN : Invalid Attribute Length
  INVAVAL  : Invalid Attribute Value INVEVENT: Invalid Event

  Port   INVPROT INVATYP INVAVAL INVALEN INVEVENT
-------- ------- ------- ------- ------- --------
   g2       0       0     36672     0       0
fet4
() автор топика
Ответ на: комментарий от fet4

Проблема решилась отказом от gvrp, в сети разношерстное оборудование видимо какие-то несовместимости.

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