HAP ac 2 + uTP протокол (qBittottent) = проблемы

Обсуждение оборудования и его настройки
Ответить
Vladimir.Yarlykov
Сообщения: 2
Зарегистрирован: 04 ноя 2020, 13:58

Доброго времени суток, форумчане!

Столкнулся с проблемой, такого плана. При использовании протокола uTP (Micto Transport Protocol) в торрент-качалке qBittorent зависает свитч с периодичностью 15-40 секунд, потом видимо железка видит, что свитч завис, перезагружает его, связь появляется на 15-40 сек и так далее по циклу. Если в эти моменты пинговать роутер (ping -t x.x.x.x), 15-40 секунд пинги идут норм, потом секунд 5-8 консоль рапортует либо "общий сбой" либо "заданный узел недоступен", потом опять пинг идет, инет работает.

В System->Log при этом видно что порт, которому подключена машина с качалкой флапает. В логах видно записи "etherN link down - etherN link up"(N - номер порта) с интервалом 1-2 сек.

В настройках для порта принудительно ставил 100Мбит\с half/Full duplex, в настройках сетевой крутил всякие энергосберегайки, green ethernet'ы, flow control'ы и т.д. и т.п, ничего не помогает.

Если тыкнуть провод от провайдера напрямую в машину, поднять сессию, запустить торрент-клиент, проблем вообще не наблюдается, все работает просто изумительно.

Пока проблему решил отключением Micto Transport Protocol'a, но все же хотелось разобраться в чем кроется проблема.

ЗЫ. Есть еще в хозяйстве RB951g-2Hnd, на нем тоже наблюдаются проблемы с зависаниями свитча, в нем он стоит такой-же как в HAP ac 2 (Atheros 8327).


Vladimir.Yarlykov
Сообщения: 2
Зарегистрирован: 04 ноя 2020, 13:58

Прикреплю конфиг, может знающие люди что подскажут... :cry_ing:
Изначально все настраивалось квиксетом из пустой конфигурации, в ручную только прикрутил IPv6 + правила фаервола для IPv6, UPnP и поддержку no-ip.org. Плюс так по мелочевке потвикал.

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

# nov/09/2020 21:50:24 by RouterOS 6.47.4
# software id = MPTF-EWXW
#
# model = RBD52G-5HacD2HnD
# serial number = D7160C568AA6
/interface bridge
add name=bridge1
/interface pppoe-client
add add-default-route=yes disabled=no interface=ether1 name=pppoe-out1 \
    password=XXX use-peer-dns=yes user=XXX
/interface wireless
set [ find default-name=wlan1 ] band=2ghz-b/g/n country=russia disabled=no \
    installation=indoor mode=ap-bridge ssid=MikroTik station-roaming=enabled \
    wireless-protocol=802.11 wps-mode=disabled
set [ find default-name=wlan2 ] band=5ghz-a/n/ac channel-width=\
    20/40/80mhz-eeCe country=russia disabled=no frequency=auto installation=\
    indoor mode=ap-bridge ssid=MikroTik station-roaming=enabled \
    wireless-protocol=802.11 wps-mode=disabled
/interface list
add name=WAN
add name=LAN
/interface wireless security-profiles
set [ find default=yes ] authentication-types=wpa-psk,wpa2-psk mode=\
    dynamic-keys supplicant-identity=MikroTik wpa-pre-shared-key=XXX \
    wpa2-pre-shared-key=XXX
/ip hotspot profile
set [ find default=yes ] html-directory=flash/hotspot
/ip pool
add name=dhcp ranges=192.168.1.50-192.168.1.254
/ip dhcp-server
add address-pool=dhcp disabled=no interface=bridge1 lease-time=12h name=dhcp1
/user group
set full policy="local,telnet,ssh,ftp,reboot,read,write,policy,test,winbox,pas\
    sword,web,sniff,sensitive,api,romon,dude,tikapp"
/interface bridge port
add bridge=bridge1 interface=ether2
add bridge=bridge1 interface=ether3
add bridge=bridge1 interface=ether4
add bridge=bridge1 interface=ether5
add bridge=bridge1 interface=wlan2
add bridge=bridge1 interface=wlan1
/ip neighbor discovery-settings
set discover-interface-list=LAN
/interface list member
add interface=pppoe-out1 list=WAN
add interface=bridge1 list=LAN
/ip address
add address=192.168.1.1/24 interface=bridge1 network=192.168.1.0
/ip dhcp-client
add interface=ether1
/ip dhcp-server lease
add address=192.168.1.12 client-id=1:a8:a1:59:1f:dd:68 mac-address=\
    A8:A1:59:1F:DD:68 server=dhcp1
/ip dhcp-server network
add address=192.168.1.0/24 dns-server=8.8.8.8,8.8.4.4 gateway=192.168.1.1 \
    netmask=24
/ip firewall filter
add action=fasttrack-connection chain=forward connection-state=\
    established,related protocol=tcp
add action=fasttrack-connection chain=forward connection-state=\
    established,related protocol=udp
add action=accept chain=input comment=bylo protocol=icmp
add action=accept chain=input comment=bylo connection-state=established
add action=accept chain=input comment=bylo connection-state=related
add action=drop chain=input comment=bylo in-interface-list=!LAN
/ip firewall nat
add action=masquerade chain=srcnat out-interface-list=WAN
/ip upnp
set enabled=yes
/ip upnp interfaces
add interface=bridge1 type=internal
add interface=pppoe-out1 type=external
/ipv6 address
add from-pool=ipv6pool interface=bridge1
/ipv6 dhcp-client
add add-default-route=yes interface=pppoe-out1 pool-name=ipv6pool request=\
    prefix
/ipv6 firewall filter
add action=drop chain=input connection-state=invalid
add action=accept chain=input connection-state=established,related \
    in-interface=pppoe-out1
add action=accept chain=forward connection-state=established,related \
    in-interface=pppoe-out1 out-interface=bridge1
add action=accept chain=input protocol=icmpv6
add action=accept chain=forward protocol=icmpv6
add action=accept chain=input dst-port=546 in-interface=pppoe-out1 protocol=\
    udp
add action=accept chain=forward in-interface=bridge1 out-interface=pppoe-out1
/ipv6 nd
set [ find default=yes ] advertise-dns=no
/system clock
set time-zone-name=Europe/Moscow
/system scheduler
add interval=1m name=no-ip on-event="/system script run no-ip.org" policy=\
    read,write,test start-time=startup
/system script
add dont-require-permissions=no name=no-ip.org owner=admin policy=\
    read,write,test source="# \?\?\?\?\?\?\?\?\? \?\?\?\?\?\?\?\?\?\?\? \? NO-\
    IP.com\r\
    \n:local ddnsuser \"XXX\"\r\
    \n:local ddnspass \"XXX\"\r\
    \n:local ddnshostname \"XXX\" \r\
    \n:local ddnsinterface \"pppoe-out1\"\r\
    \n\r\
    \n# \?\?\?\?\?\?\?\? \?\?\?\?\?\?\?\?\?\? \?\?\?\?\?\?\?\?\?\?\r\
    \n:global ddnslastip\r\
    \n:local str\r\
    \n:local ddnsip\r\
    \n:local ip\r\
    \n\r\
    \n:if ([ :typeof \$ddnslastip ] = nil ) do={ :global ddnslastip \"0\" }\r\
    \n\r\
    \n:local ddnsip [ /ip address get [/ip address find interface=\$ddnsinterf\
    ace ] address ]\r\
    \n\r\
    \n:if ([ :typeof \$ddnsip ] = nil ) do={\r\
    \n   :log info (\"ServiceDNS: No ip address on \$ddnsinterface .\")\r\
    \n} else={\r\
    \n\r\
    \n# \?\? \?\?\?\?\?\?\?\?\?\?\? \?\? \?\?\?\?\?\?\?\?\?\? IP \?\?\?\?\?\? \
    \?\?\?\?\?\?\?\?\? \?\?\?\?\?\r\
    \n   :for i from=( [:len \$ddnsip] - 1) to=0 do={ \r\
    \n      :if ( [:pick \$ddnsip \$i] = \"/\") do={ \r\
    \n       :set ddnsip [:pick \$ddnsip 0 \$i];\r\
    \n      } \r\
    \n   }\r\
    \n\r\
    \n  :if (\$ddnsip != \$ddnslastip) do={\r\
    \n\r\
    \n    :log info (\"ServiceDNS: \$ddnshostname -> \$ddnsip\")\r\
    \n\r\
    \n# \?\?\?\?\?\?\?\?\?\? \?\?\?\?\? IP \?\?\?\?\? \?\? \?\?\?\?\?\? No-IP \
    \? \?\?\?\?\?\?\? HTTP \?\?\?\?\?\?\?\r\
    \n    :local str \"/nic/update\?hostname=\$ddnshostname&myip=\$ddnsip\"\r\
    \n    /tool fetch url=\"http://dynupdate.no-ip.com/\$str\" mode=http user=\
    \$ddnsuser password=\$ddnspass \\ dst-path=(\"/ServiceDNS.\".\$ddnshostnam\
    e)\r\
    \n    :delay 1 \r\
    \n\r\
    \n# \?\?\?\?\?\?\?\?\? \?\?\?\?\?\?\?\?\?\? \? \?\?\? \?\?\?\?\?\?\r\
    \n    :local str [/file find name=\"ServiceDNS.\$ddnshostname\"];\r\
    \n    :log info [/file get \$str contents];\r\
    \n    /file remove \$str\r\
    \n    :global ddnslastip \$ddnsip\r\
    \n\r\
    \n  } \r\
    \n\r\
    \n}\r\
    \n"
/tool mac-server
set allowed-interface-list=LAN
/tool mac-server mac-winbox
set allowed-interface-list=LAN



Ответить