LINUX.ORG.RU
ФорумAdmin

Openwrt+tinyproxy+4g_modem сильно тормозит интернет в этой связке

 ,


1

1

Не могу понять где проблема скорее всего в iptables (С этим фаерволом плохо знаком) или с прокси. Если модем подключить к компьютеру интернет летает. А вот через роутер работает, но очень медленно. Подскажите где проблема. Пытался настроить трафик мимо прокси, не смог понять как это сделать, инет вообще переставал работать.

/etc/config/firewall

config defaults
option syn_flood '1'

option input 'ACCEPT'
option output 'ACCEPT'
option forward 'REJECT'

config zone
option name 'lan'
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'ACCEPT'
option network 'lan'

config zone
option name 'wan'
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option masq '1'
option mtu_fix '1'
option network 'wan wan6'

config forwarding
option src 'lan'
option dest 'wan'

config rule
option name 'Allow-DHCP-Renew'
option src 'wan'
option proto 'udp'
option dest_port '68'
option target 'ACCEPT'
option family 'ipv4'

config rule
option name 'Allow-Ping'
option src 'wan'
option proto 'icmp'
option icmp_type 'echo-request'
option family 'ipv4'
option target 'ACCEPT'

config include
option path '/etc/firewall.user'

config redirect
option name 'Transparent Proxy Redirect'
option src 'lan'
option proto 'tcp'
option src_dport '80'
option dest_ip '10.132.56.41'
option src_dip '!10.132.56.41'
option dest 'lan'
option dest_port '8888'

root@OpenWrt:~# cat /etc/config/firewall

config defaults
option syn_flood '1'
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'REJECT'

config zone
option name 'lan'
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'ACCEPT'
option network 'lan'

config zone
option name 'wan'
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option masq '1'
option mtu_fix '1'
option network 'wan wan6'

config forwarding
option src 'lan'
option dest 'wan'

config rule
option name 'Allow-DHCP-Renew'
option src 'wan'
option proto 'udp'
option dest_port '68'
option target 'ACCEPT'
option family 'ipv4'

config rule
option name 'Allow-Ping'
option src 'wan'
option proto 'icmp'
option icmp_type 'echo-request'
option family 'ipv4'
option target 'ACCEPT'

config include
option path '/etc/firewall.user'

config redirect
option name 'Transparent Proxy Redirect'
option src 'lan'
option proto 'tcp'
option src_dport '80'
option dest_ip '10.132.56.41'
option src_dip '!10.132.56.41'
option dest 'lan'
option dest_port '8888'

действующие правила

Chain INPUT (policy ACCEPT)
num target prot opt source destination
1 delegate_input all  — 0.0.0.0/0 0.0.0.0/0

Chain FORWARD (policy DROP)
num target prot opt source destination
1 delegate_forward all  — 0.0.0.0/0 0.0.0.0/0

Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
1 delegate_output all  — 0.0.0.0/0 0.0.0.0/0

Chain delegate_forward (1 references)
num target prot opt source destination
1 forwarding_rule all  — 0.0.0.0/0 0.0.0.0/0 /* user chain for forwarding */
2 ACCEPT all  — 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,ESTABLISHED
3 zone_lan_forward all  — 0.0.0.0/0 0.0.0.0/0
4 zone_wan_forward all  — 0.0.0.0/0 0.0.0.0/0
5 reject all  — 0.0.0.0/0 0.0.0.0/0

Chain delegate_input (1 references)
num target prot opt source destination
1 ACCEPT all  — 0.0.0.0/0 0.0.0.0/0
2 input_rule all  — 0.0.0.0/0 0.0.0.0/0 /* user chain for input */
3 ACCEPT all  — 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,ESTABLISHED
4 syn_flood tcp  — 0.0.0.0/0 0.0.0.0/0 tcp flags:0x17/0x02
5 zone_lan_input all  — 0.0.0.0/0 0.0.0.0/0
6 zone_wan_input all  — 0.0.0.0/0 0.0.0.0/0

Chain delegate_output (1 references)
num target prot opt source destination
1 ACCEPT all  — 0.0.0.0/0 0.0.0.0/0
2 output_rule all  — 0.0.0.0/0 0.0.0.0/0 /* user chain for output */
3 ACCEPT all  — 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,ESTABLISHED
4 zone_lan_output all  — 0.0.0.0/0 0.0.0.0/0
5 zone_wan_output all  — 0.0.0.0/0 0.0.0.0/0

Chain forwarding_lan_rule (1 references)
num target prot opt source destination

Chain forwarding_rule (1 references)
num target prot opt source destination

Chain forwarding_wan_rule (1 references)
num target prot opt source destination

Chain input_lan_rule (1 references)
num target prot opt source destination

Chain input_rule (1 references)
num target prot opt source destination

Chain input_wan_rule (1 references)
num target prot opt source destination

Chain output_lan_rule (1 references)
num target prot opt source destination

Chain output_rule (1 references)
num target prot opt source destination

Chain output_wan_rule (1 references)
num target prot opt source destination

Chain reject (3 references)
num target prot opt source destination
1 REJECT tcp  — 0.0.0.0/0 0.0.0.0/0 reject-with tcp-reset
2 REJECT all  — 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable

Chain syn_flood (1 references)
num target prot opt source destination
1 RETURN tcp  — 0.0.0.0/0 0.0.0.0/0 tcp flags:0x17/0x02 limit: avg 25/sec burst 50
2 DROP all  — 0.0.0.0/0 0.0.0.0/0

Chain zone_lan_dest_ACCEPT (2 references)
num target prot opt source destination
1 ACCEPT all  — 0.0.0.0/0 0.0.0.0/0

Chain zone_lan_forward (1 references)
num target prot opt source destination
1 forwarding_lan_rule all  — 0.0.0.0/0 0.0.0.0/0 /* user chain for forwarding */
2 zone_wan_dest_ACCEPT all  — 0.0.0.0/0 0.0.0.0/0 /* forwarding lan -> wan */
3 ACCEPT all  — 0.0.0.0/0 0.0.0.0/0 ctstate DNAT /* Accept port forwards */
4 zone_lan_dest_ACCEPT all  — 0.0.0.0/0 0.0.0.0/0

Chain zone_lan_input (1 references)
num target prot opt source destination
1 input_lan_rule all  — 0.0.0.0/0 0.0.0.0/0 /* user chain for input */
2 ACCEPT all  — 0.0.0.0/0 0.0.0.0/0 ctstate DNAT /* Accept port redirections */
3 zone_lan_src_ACCEPT all  — 0.0.0.0/0 0.0.0.0/0

Chain zone_lan_output (1 references)
num target prot opt source destination
1 output_lan_rule all  — 0.0.0.0/0 0.0.0.0/0 /* user chain for output */
2 zone_lan_dest_ACCEPT all  — 0.0.0.0/0 0.0.0.0/0

Chain zone_lan_src_ACCEPT (1 references)
num target prot opt source destination
1 ACCEPT all  — 0.0.0.0/0 0.0.0.0/0

Chain zone_wan_dest_ACCEPT (2 references)
num target prot opt source destination
1 ACCEPT all  — 0.0.0.0/0 0.0.0.0/0

Chain zone_wan_dest_REJECT (1 references)
num target prot opt source destination
1 reject all  — 0.0.0.0/0 0.0.0.0/0

Chain zone_wan_forward (1 references)
num target prot opt source destination
1 forwarding_wan_rule all  — 0.0.0.0/0 0.0.0.0/0 /* user chain for forwarding */
2 ACCEPT all  — 0.0.0.0/0 0.0.0.0/0 ctstate DNAT /* Accept port forwards */
3 zone_wan_dest_REJECT all  — 0.0.0.0/0 0.0.0.0/0

Chain zone_wan_input (1 references)
num target prot opt source destination
1 input_wan_rule all  — 0.0.0.0/0 0.0.0.0/0 /* user chain for input */
2 ACCEPT udp  — 0.0.0.0/0 0.0.0.0/0 udp dpt:68 /* Allow-DHCP-Renew */
3 ACCEPT icmp — 0.0.0.0/0 0.0.0.0/0 icmptype 8 /* Allow-Ping */
4 ACCEPT all  — 0.0.0.0/0 0.0.0.0/0 ctstate DNAT /* Accept port redirections */
5 zone_wan_src_REJECT all  — 0.0.0.0/0 0.0.0.0/0

Chain zone_wan_output (1 references)
num target prot opt source destination
1 output_wan_rule all  — 0.0.0.0/0 0.0.0.0/0 /* user chain for output */
2 zone_wan_dest_ACCEPT all  — 0.0.0.0/0 0.0.0.0/0

Chain zone_wan_src_REJECT (1 references)
num target prot opt source destination
1 reject all  — 0.0.0.0/0 0.0.0.0/0

/var/etc/tinyproxy.conf

### AUTOGENERATED CONFIGURATION
### DO NOT EDIT
### SEE /etc/config/tinyproxy INSTEAD

User nobody
Group nogroup
Port 8888
Timeout 600
DefaultErrorFile «/usr/share/tinyproxy/default.html»
StatHost «127.0.0.1»
StatFile «/usr/share/tinyproxy/stats.html»
LogFile «/var/log/tinyproxy.log»
Syslog Off
LogLevel Info
MaxClients 10
MinSpareServers 5
MaxSpareServers 20
StartServers 10
MaxRequestsPerChild 0
Allow 127.0.0.1
Allow 192.168.1.0/24
Allow 10.132.56.0/24
ViaProxyName «tinyproxy»
FilterURLs Off
FilterExtended Off
FilterCaseSensitive Off
FilterDefaultDeny No
ConnectPort 443
ConnectPort 563



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

А без transparent proxy? Возможно, оно сильно замедляет.

derlafff ★★★★★
()

А какой именно роутер? У них обычно очень слабый процессор, на котором даже просто USB сжирает под свои нужды значительную часть процессорного времени, не говоря уже о чём-то более сложном.

Запусти на роутере top и посмотри сколько % процессорного времени расходуется.

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

роутер tp-link mr3220. Прокси мне нужен. Но я действительно хотел бы попробовать в обход него скажем один компьютер пустить чтобы поробовать будет ли интернет тормозить. Можете подсказать как правило для iptables будет выглядеть скажем для 10.132.56.2

TOP

2978 1756 root R 1364 5% 0% top
1755 1061 root S 1244 4% 0% /usr/sbin/dropbear -F -P /var/run/dro
1119 1 root S 1616 6% 0% /usr/sbin/uhttpd -f -h /www -r OpenWr
994 1 root S 1564 5% 0% /sbin/netifd
960 1 root S 1532 5% 0% /sbin/rpcd
1 0 root S 1408 5% 0% /sbin/procd
1756 1755 root S 1368 5% 0% -ash
1196 1 root S 1364 5% 0% /usr/sbin/ntpd -n -S /usr/sbin/ntpd-h
1181 994 root S 1360 5% 0% udhcpc -p /var/run/udhcpc-usb0.pid -s
1061 1 root S 1152 4% 0% /usr/sbin/dropbear -F -P /var/run/dro
951 1 root S 1044 4% 0% /sbin/logd -S 16
1245 1 nobody S 932 3% 0% /usr/sbin/dnsmasq -C /var/etc/dnsmasq
490 1 root S 896 3% 0% /sbin/ubusd
2396 2392 nobody S 892 3% 0% /usr/sbin/tinyproxy -c /var/etc/tinyp
2400 2392 nobody S 892 3% 0% /usr/sbin/tinyproxy -c /var/etc/tinyp
2397 2392 nobody S 892 3% 0% /usr/sbin/tinyproxy -c /var/etc/tinyp
2402 2392 nobody S 892 3% 0% /usr/sbin/tinyproxy -c /var/etc/tinyp
2401 2392 nobody S 892 3% 0% /usr/sbin/tinyproxy -c /var/etc/tinyp
2403 2392 nobody S 892 3% 0% /usr/sbin/tinyproxy -c /var/etc/tinyp
2404 2392 nobody S 892 3% 0% /usr/sbin/tinyproxy -c /var/etc/tinyp

Не вижу я чтобы роутер загружен был

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

не могу кстати понять почему у меня разметка форума «спойлер» не работает вроде заполняю по инструкции

(cut=Текст, который будет выведен в ссылке вместо скрытого внутри cut содержимого) Текст, который будет скрыт внутри спойлера (/cut) Скобки конечно квадратные использую

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

судя по конфигу iptables у меня вообще из зоны 'lan' все разрешено, что не запрещено. Врядли в фаере дело.

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

Но у тебя почти вся вся память отожрана (80% в сумме по тем процессам, что вижу) +ядро +кэши. В итоге линь может тупо постоянно кэши чистить и из-за этого тормозить. Посмотри еще cat /proc/meminfo.

не могу кстати понять почему у меня разметка форума «спойлер» не работает

используй [codе] - разметка не летит

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

cat /proc/meminfo

MemTotal:          28580 kB[br]
MemFree:            1788 kB[br]
MemAvailable:      10764 kB[br]
Buffers:            3028 kB[br]
Cached:             9576 kB[br]
SwapCached:            0 kB[br]
Active:            11060 kB[br]
Inactive:           4172 kB[br]
Active(anon):       5272 kB[br]
Inactive(anon):       64 kB[br]
Active(file):       5788 kB[br]
Inactive(file):     4108 kB[br]
Unevictable:           0 kB[br]
Mlocked:               0 kB[br]
SwapTotal:             0 kB[br]
SwapFree:              0 kB[br]
Dirty:                 0 kB[br]
Writeback:             0 kB[br]
AnonPages:          2640 kB[br]
Mapped:             1420 kB[br]
Shmem:              2712 kB[br]
Slab:               6832 kB[br]
SReclaimable:       1520 kB[br]
SUnreclaim:         5312 kB[br]
KernelStack:         368 kB[br]
PageTables:          408 kB[br]
NFS_Unstable:          0 kB[br]
Bounce:                0 kB[br]
WritebackTmp:          0 kB[br]
CommitLimit:       14288 kB[br]
Committed_AS:       9704 kB[br]
VmallocTotal:    1048372 kB[br]
VmallocUsed:         904 kB[br]
VmallocChunk:    1041408 kB[br]

Все-таки сомнительно что в памяти проблема сам роутер летает, т.е. если я на его вебку захожу без прокси он быстро работает, если через прокси то тормозит.
testik777
() автор топика
Ответ на: комментарий от vgovseychuk

да и на странице статуса в openwrt данные : Memory Total Available 4428 kB / 28580 kB (15%) Free 1400 kB / 28580 kB (4%) Buffered 3028 kB / 28580 kB (10%) не вижу чтобы 80 процентов было.

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

пробовал отключить прокси и выключить правило iptables 'Transparent Proxy Redirect'. Интернет нормально начинает работать. Но все-таки хотелось бы работу через прокси настроить. Может другой прокси пробовать, там polipo например.

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

Я бы все-таки копал в сторону памяти и кэшей. Оперативки мало, а прокси, насколько я знаю, достаточно требовательны к ней. Вот тут даже ссылки на таблицы какие-то по памяти приводят.

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

ну у меня же не squid стоит а tinyproxy. Он вроде как в разы легче должен быть. Да и с оперативкой я особо ничего не сделаю. В роутер ее не добавишь. Процессов как видно из top'а или ps не много. Если есть что-то лишнее могу выключить.

 1 root      1408 S    /sbin/procd
    2 root         0 SW   [kthreadd]
    3 root         0 SW   [ksoftirqd/0]
    5 root         0 SW<  [kworker/0:0H]
    6 root         0 SW   [kworker/u2:0]
    7 root         0 SW<  [khelper]
   62 root         0 SW<  [writeback]
   63 root         0 SW<  [bioset]
   67 root         0 SW<  [kblockd]
   69 root         0 SW   [kswapd0]
   70 root         0 SW   [kworker/0:1]
   71 root         0 SW   [fsnotify_mark]
   73 root         0 SW   [spi0]
  266 root         0 SW<  [deferwq]
  267 root         0 SW   [kworker/u2:2]
  328 root         0 SW   [kworker/0:2]
  333 root         0 SW   [scsi_eh_0]
  334 root         0 SW<  [scsi_tmf_0]
  335 root         0 SW   [usb-storage]
  357 root         0 SW<  [kworker/0:1H]
  415 root         0 SW<  [ext4-rsv-conver]
  490 root       896 S    /sbin/ubusd
  534 root       772 S    /sbin/askfirst /bin/ash --login
  812 root         0 SW<  [cfg80211]
  951 root      1044 S    /sbin/logd -S 16
  960 root      1532 S    /sbin/rpcd
  994 root      1564 S    /sbin/netifd
 1061 root      1152 S    /usr/sbin/dropbear -F -P /var/run/dropbear.1.pid -p
 1119 root      1636 S    /usr/sbin/uhttpd -f -h /www -r OpenWrt -x /cgi-bin -
 1181 root      1360 S    udhcpc -p /var/run/udhcpc-usb0.pid -s /lib/netifd/dh
 1196 root      1364 S    /usr/sbin/ntpd -n -S /usr/sbin/ntpd-hotplug -p 0.ope
 1245 nobody     940 S    /usr/sbin/dnsmasq -C /var/etc/dnsmasq.conf -k -x /va
 1755 root      1244 R    /usr/sbin/dropbear -F -P /var/run/dropbear.1.pid -p
 1756 root      1368 S    -ash
 2392 nobody     880 S    /usr/sbin/tinyproxy -c /var/etc/tinyproxy.conf
 2395 nobody     892 S    /usr/sbin/tinyproxy -c /var/etc/tinyproxy.conf
 2396 nobody     892 S    /usr/sbin/tinyproxy -c /var/etc/tinyproxy.conf
 2397 nobody     892 S    /usr/sbin/tinyproxy -c /var/etc/tinyproxy.conf
 2400 nobody     892 S    /usr/sbin/tinyproxy -c /var/etc/tinyproxy.conf
 2401 nobody     892 S    /usr/sbin/tinyproxy -c /var/etc/tinyproxy.conf
 2402 nobody     892 S    /usr/sbin/tinyproxy -c /var/etc/tinyproxy.conf
 2403 nobody     892 S    /usr/sbin/tinyproxy -c /var/etc/tinyproxy.conf
 2404 nobody     972 S    /usr/sbin/tinyproxy -c /var/etc/tinyproxy.conf
 2405 nobody     892 S    /usr/sbin/tinyproxy -c /var/etc/tinyproxy.conf
 2406 nobody     892 S    /usr/sbin/tinyproxy -c /var/etc/tinyproxy.conf

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

может ssh тунелем организовать выход в интернет. Не так удобно конечно как http-прокси, но можно хотябы проверить будет ли тормозить. Как обычно правило выглядит в Iptables для ssh-туннеля?

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

Вообщем поставил вместо tinyproxy, privoxy по этой инструкции все залетало. Tinyproxy какой-то недоделанный продукт, если не сказать хуже. Тему можно закрыть, надеюсь информация кому-нибудь поможет. Жаль по туннелям я так помощи и не дождался. в фаероволе даже конфиг не менял, оставил:


config redirect
option name 'Transparent Proxy Redirect'
option src 'lan'
option proto 'tcp'
option src_dport '80'
option dest_ip '10.132.56.41'
option src_dip '!10.132.56.41'
option dest 'lan'
option dest_port '8118'

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

tinyproxy. Он вроде как в разы легче должен быть.

Ну не знаю, я в своё время его выбросил и заменил на polipo.
Уж больно оно глючное.

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