Code Monkey home page Code Monkey logo

Comments (249)

z3APA3A avatar z3APA3A commented on August 19, 2024 1

flush начинает новый список ACL, больше он ни на что не влияет.
maxconn 100 не даст произвести более 100 подключений к одному прокси. При небольшом превышении подключения будут висеть в очереди (backlog) при очень большом превышении - новые подключения будут реджектиться, как если порт закрыт.

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024 1

Так а где тут IPv6? У тебя клиент запрашивает IPv4 адрес, а не IPv6. Настрой в проксификаторе разрешение имен через прокси, чтобы клиент запрашивал имя, а не IP адрес, потому что по дефолту он очевидно резолвит в IPv4 а не в IPv6.

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024 1

Можешь попробовать увеличить stacksize
http://3proxy.ru/faqr.asp#CRASH
но вообще в glibc есть race condition'ы в getaddrinfo() (она должна быть thread safe, но на самом деле таковой не является, т.к. в частности использует libconfig, которые не thread safe). Всплывать все это начинает при любой большой и сложной конфигурации резолвера, в частности и при большом количестве интерфейсов.
Избавиться от использования getaddrinfo() в 3proxy можно прописав nserver.

from 3proxy.

S-o-T avatar S-o-T commented on August 19, 2024

Зравствуйте. Возникли следующие вопросы:

  1. Как происходит обработка сигнала SIGUSR1?
    Вопрос возник в результате попыток добиться ожидаемого поведения при передаче процесу этого сигнала. Вместо заявленной перезагрузки конфига (в котором явно, при помощи опции config, указан используемый файл) происходит просто отмирание всех активных нитей.

  2. В каких контекстах возможно включение файлов для которых спользуется опция monitor?
    Вопрос возник в следующей ситуации: в ACL для socks вместо явного указания списка usernames для опции allow сделано включение текстового файла "userlist". Для этого файла указанна опция monitor. Пользователь с указанным в этом файле username соединяется с сервером и какое-то время им пользуется. Затем происходит изменение файла "userlist" таким образом, что указанный в нем username меняется, однако пользователь не теряет возможность соеденятся с сервером до следующего рестарта (желаемым поведением было бы, если при изменении файла "userlist", без перезагрузки всего сервера, пользователь со старым username не мог бы соединиться с сервером).

Заранее спасибо.

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024
  1. это означает что прокси не смог загрузить конфиг. Это может быть, например, если в конфиге есть setuid и конфиг не доступен для чтения пользователю с данным id или chroot и конфиг не доступен из chroot'а.
  2. Не очень понял вопрос. Ничего страшного в перезагрузке конфига нет, это достаточно быстрая операция. monitor не привязан к конфигу, можно пониторить даже файлы которые не являются частью конфига. При изменении конфига правильно мониторить только один файл, например /somepath/readconfig менять все файлы, а потом делать touch файла, для которого производится monitor чтобы не было ситуации, что прокси пересчитывает не до конца записанную конфигурацию.

from 3proxy.

S-o-T avatar S-o-T commented on August 19, 2024

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

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

Спасибо.

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

chroot не будет дергаться повторно внутри chroot'а, путь к конфигу внутри chroot'а тоже автоматически корректируется, т.е. достаточно просто положить конфиг внутрь директории, в которую делается chroot.

Соединения не рвутся при перезагрузке конфига.

Отстрел старых соединений, которые не соответствуют новым ACL теоретически реализовать не сложно, поставь фич-реквест, посмотрю.

from 3proxy.

S-o-T avatar S-o-T commented on August 19, 2024

Судя по всему путь корректируется только к конфигу, а для тех файлов которые указаны в других опциях [monitor, include, ...] такой коррекции не происходит (эти файлы лежат в поддиректориях куда делается chroot), и поэтому после сигнала USR1 лезут ошибки с текстами о невозможности открыть файлы по тем абсолютным путям, которые указанны в конфиге. Ну и после chroot программа не реагирует на изменение файлов указанных в опции monitor, даже если они находятся в поддиректории в которую делается chroot.
(фич-реквест оформить в виде отдельного issue?)

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

Так а зачем тянуть с chroot'ом, давайте его сразу после указания пути к конфигу, и делайте все пути дальше внутри chroot'а.

Да, в виде отдельного issue.

from 3proxy.

S-o-T avatar S-o-T commented on August 19, 2024

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

Также на версии 0.8.1 наблюдается большое количество ошибок с кодом 00013 на socks, тогда как при изменении бинарника на версию 0.7.1.3 в том же контексте (интенсивности подключений и таргет хостах) ошибки пропадают.

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

Посмотри пожалуйста с этим патчем:
c692303
там добавленно логгирование ошибки на connect().

S-o-T пишет:

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

Также на версии 0.8.1 наблюдается большое количество ошибок с кодом
00013 на socks, тогда как при изменении бинарника на версию 0.7.1.3 в
том же контексте (интенсивности подключений и таргет хостах) ошибки
пропадают.


Reply to this email directly or view it on GitHub
#12 (comment).

Vladimir '3APA3A' Dubrovin
http://3proxy.ru/

from 3proxy.

S-o-T avatar S-o-T commented on August 19, 2024

Пишет Cannot_assign_requested_address.

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

Попробуй пожалуйста с этим патчем:
8ef54f4

S-o-T пишет:

Пишет Cannot_assign_requested_address.


Reply to this email directly or view it on GitHub
#12 (comment).

Vladimir '3APA3A' Dubrovin
http://3proxy.ru/

from 3proxy.

S-o-T avatar S-o-T commented on August 19, 2024

Не могу сказать, что провел полноценное сравнительное тестирование, но с эти патчем таких ошибок пока не замечено (тогда как на предыдущей версии они иногда возникают).

from 3proxy.

dchmaster avatar dchmaster commented on August 19, 2024

0.8.2 решил проблему с биндингом на FreeBSD, однако в портах обновления пока не произошло и устанавливается 0.8.1. Я подменил исходники 0.8.1 на 0.8.2, патчи порта легли на них без ошибок, скомпилировал и установил стандартной процедурой make install clean. После этого, убедившись, что сервисы прибиндились на указанные в конфиге адреса/порты, благополучно все оставил в таком виде. Сегодня я об этом пожалел, так как прокси работает в продакшн и выяснилось, что некорректно. На тест времени не было, так что быстро откатился на 0.7.3 и включил. Пожалуйста, протестируйте версию на фре, а я со своей стороны, если нужно, смогу позже собрать 0.8.2 на тестовом хосте и прислать конфиги и логи.
Спасибо и удачи!

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

В чем некорректность, хотя бы примерно?

dchmaster пишет:

0.8.2 решил проблему с биндингом на FreeBSD, однако в портах обновления
пока не произошло и устанавливается 0.8.1. Я подменил исходники 0.8.1 на
0.8.2, патчи порта легли на них без ошибок, скомпилировал и установил
стандартной процедурой make install clean. После этого, убедившись, что
сервисы прибиндились на указанные в конфиге адреса/порты, благополучно
все оставил в таком виде. Сегодня я об этом пожалел, так как прокси
работает в продакшн и выяснилось, что некорректно. На тест времени не
было, так что быстро откатился на 0.7.3 и включил. Пожалуйста,
протестируйте версию на фре, а я со своей стороны, если нужно, смогу
позже собрать 0.8.2 на тестовом хосте и прислать конфиги и логи.
Спасибо и удачи!


Reply to this email directly or view it on GitHub
#12 (comment).

Vladimir '3APA3A' Dubrovin
http://3proxy.ru/

from 3proxy.

dchmaster avatar dchmaster commented on August 19, 2024

firefox при подключении стал писать bad gateway
логи я снес перед откатом на 0.7.1_3, но ближе к вечеру смогу собрать
полигон
ниже конфиг, который прекрасно работает на 0.7.1:

nserver 8.8.8.8
nserver 8.8.4.4
nscache 65536
timeouts 1 5 30 60 180 1800 15 60
daemon
log /var/log/3proxy/3proxy.log D
logformat "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
archiver rar rar a -df -inul %A %F
rotate 30
auth iponly
allow *
127.0.0.0/8,192.168.64.0/24,192.168.192.0/24,192.168.224.0/24,192.168.128.0/24

    proxy -i10.0.80.7 -eXXX.XXX.XXX.XX1 -p8070 -a -n
    proxy -i10.0.80.7 -eXXX.XXX.XXX.XX2 -p8080 -a -n
    proxy -i10.0.80.7 -eXXX.XXX.XXX.XX3 -p8090 -a -n
    socks -i10.0.80.7 -eXXX.XXX.XXX.XX1 -p1080
    pidfile /var/run/3proxy.pid
    setgid 8080
    setuid 8080

пока как-то так... потом отпишусь

from 3proxy.

dchmaster avatar dchmaster commented on August 19, 2024

приехал новый порт, картина, естественно, не изменилась

в логах:
1453721573.324 PROXY.8070 00013 - 192.168.192.107:49627 109.237.110.23:80
0 0 0 GET_http://wincmd.ru/_HTTP/1.1
1453721573.378 PROXY.8070 00013 - 192.168.192.107:49628 157.55.233.124:443
0 0 0 CONNECT_urs.microsoft.com:443_HTTP/1.0
1453721573.380 PROXY.8070 00013 - 192.168.192.107:49629 157.55.233.124:443
0 0 0 CONNECT_urs.microsoft.com:443_HTTP/1.0
1453721587.316 PROXY.8070 00013 - 192.168.192.107:49630 80.68.251.34:80 0
0 0 GET_http://www.rbc.ru/_HTTP/1.1
1453721591.081 PROXY.8070 00013 - 192.168.192.107:49631 80.68.251.34:80 0
0 0 GET_http://www.rbc.ru/_HTTP/1.1

в браузере:

502 Bad Gateway
Host Not Found or connection failed

очевидно, что это ответ прокси:

~/usr/ports/net/3proxy/work/3proxy-3proxy-0.8.2# grep -R Gateway *
src/proxy.c:/* 1 / "HTTP/1.0 502 Bad Gateway\r\n"
src/proxy.c: "<title>502 Bad Gateway</title>\r\n"
src/proxy.c: "

502 Bad Gateway

Host Not Found or
connection failed

\r\n",
src/proxy.c:/
5 */ "HTTP/1.0 502 Bad Gateway\r\n"
src/proxy.c: "<title>502 Bad Gateway</title>\r\n"
src/proxy.c: "

502 Bad Gateway

Failed to connect parent
proxy

\r\n",

как debug level log включить?

Спасибо и удачи!

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

Попробуй текущую версию из devel, нашел недофикс первой проблемы.

from 3proxy.

dchmaster avatar dchmaster commented on August 19, 2024

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

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

Как только станет понятно что в FreeBSD все работает.

from 3proxy.

dchmaster avatar dchmaster commented on August 19, 2024

Порядок в танковых войсках. -)
Работает. Собрано из сурсов devel, как было сказано выше, непосредственно из порта путем подмены исходников.

pkg info | grep 3p
3proxy-0.8.2 Proxy servers set (support HTTP(S), FTP, SOCKS, POP3, TCP & UDP)

uname -orp
FreeBSD 10.2-RELEASE-p10 amd64

cat /usr/local/etc/3proxy.cfg
nserver 10.0.80.3
nscache 65536
timeouts 1 5 30 60 180 1800 15 60
daemon
log /var/log/3proxy/3proxy.log D
logformat "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
archiver rar rar a -df -inul %A %F
rotate 30
auth iponly
allow * 127.0.0.0/8,192.168.192.0/24,10.0.80.0/24,192.168.128.0/24 * *
proxy -i10.0.80.1 -eXXX.XXX.XXX.1 -p8070 -a -n
pidfile /var/run/3proxy.pid
setgid 8080
setuid 8080

Под нагрузкой проверить не могу, работают не более 5 человек одновременно.
Чем еще могу помочь?

2 z3APA3A: пользуясь случаем хочу выразить признательность за этот инструмент, так как более удобного набора бинарников для востребованных сетевых сервисов я не знаю.

from 3proxy.

shark136 avatar shark136 commented on August 19, 2024

Есть ли возможность использовать PTR записи в ACL ? дабы пропускать запросы на IP адреса в зависимости от PTR, а не писать явно их. (мне нужно использовать PTR cache.google.com)

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

Для адресов назначения - нет. Можно использовать имена из запроса клиента, например *.cache.google.com, но если клиент запрашивает ресурс по IP, то это работать не будет.

from 3proxy.

bol-van avatar bol-van commented on August 19, 2024

Никак не получается завести transparent proxy с заворачиванием на socks5. То просто бросает конект, то подключается к socks и шлет туда какую-то ерунду, соединение подвисает.
При этом сам по себе socks вполне рабочий и curl через него работает.
Socks висит на 127.0.0.1:1098 и создается openssh клиентом.

iptables -t nat -I OUTPUT -p tcp --dport 80 -j DNAT --to 127.0.0.1:1099
iptables -t nat -I OUTPUT -p tcp --dport 443 -j DNAT --to 127.0.0.1:1099
sysctl -w net.ipv4.conf.eth1.route_localnet=1

3proxy.conf :
log /var/log/3proxy.log
plugin /usr/local/lib/3proxy/TransparentPlugin.ld.so transparent_plugin
auth iponly
allow * * * *
parent 100 socks5 127.0.0.1 1098
tcppm -i127.0.0.1 1099 127.0.0.1 12345

3proxy.log :
transparent_filter_client() Success
81.17.30.22:443

то есть плагин нормально определяет адрес назначения

При этом если сделать так
3proxy.conf :
log /var/log/3proxy.log
plugin /usr/local/lib/3proxy/TransparentPlugin.ld.so transparent_plugin
auth iponly
allow * * * *
parent 100 socks5 127.0.0.1 1098
socks

и попробовать curl --socks5 127.0.0.1:1080, то работает

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

parent 100 socks5 127.0.0.1 1098

  • должен быть parent 1000, иначе срабатывает с вероятностью 10%

from 3proxy.

bol-van avatar bol-van commented on August 19, 2024

Действительно, про вероятность все понятно. Теперь виснет с вероятностью 100% на транспаренте

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

У тебя
parent 100 socks5 127.0.0.1 1098
а в curl 127.0.0.1:1080
ошибки нет?

from 3proxy.

bol-van avatar bol-van commented on August 19, 2024

В последнем примере я сделал другую конфигурацию. Вместо приема транспарент соединения на порт 1099 я попробовал сделать двойной сокс, один из которых на 1098, а другой в цепочке создается 3proxy на порту 1080. Это я сделал , чтобы показать, что 3proxy может нормально работать с моим socks5 на 1098, и проблема возникает именно в случае transparent и tcppm

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

Опиши полностью конфигурацию что где и как приходит, и дай кусок лога по неуспешным соединениям.

from 3proxy.

bol-van avatar bol-van commented on August 19, 2024

Вот нестат после нескольких минут после запуска curl http://www.ru
tcp 0 0 127.0.0.1:1098 127.0.0.1:48881 FIN_WAIT2
tcp 3142 0 127.0.0.1:48881 127.0.0.1:1098 CLOSE_WAIT
tcp 0 0 192.168.18.128:59573 217.112.35.75:80 ESTABLISHED
tcp 0 0 192.168.18.128:1099 192.168.18.128:59573 ESTABLISHED

Последние 2 строки это заворачивание через iptables конекта к www.ru, который так и висит спустя минуты, а вверху видно, что 3proxy давно уже отключился от socks на 1098 или его послал socks по таймауту, при этом на 1099 соединение не закрыто и так и висит вечно

from 3proxy.

bol-van avatar bol-van commented on August 19, 2024

Конфигурация - 3proxy 0.8.3. linux. пробовал на ubuntu 12.04 и на openwrt с ядром 4.1.13 mips.
конфиг я кидал выше
команды iptables, которыми включал заворачивание тоже. на 12.04 ядро старое, не принимало редирект на loopback, поэтому вписал в --to 192.168.18.128:1099
socks получается через подключение к удаленном серверу по ssh : ssh -N -D 1098 -l proxy

В логе 3proxy только это :
160219140950.761 1099 00000 - 0.0.0.0:1099 0.0.0.0:0 0 0 0 Accepting connections [4906/3078601536]
160219140951.847 1099 00000 - 192.168.18.128:59569 0.0.0.0:0 0 0 0 transparent_filter_client() Success
160219140951.847 1099 00000 - 192.168.18.128:59569 0.0.0.0:0 0 0 0 217.112.35.75:80
160219140952.406 1099 00000 - 192.168.18.128:59569 127.0.0.1:1098 156 22 1
160219140952.728 1099 00000 - 192.168.18.128:59570 0.0.0.0:0 0 0 0 transparent_filter_client() Success
160219140952.728 1099 00000 - 192.168.18.128:59570 0.0.0.0:0 0 0 0 217.112.35.75:80
160219140953.257 1099 00000 - 192.168.18.128:59570 127.0.0.1:1098 156 22 1
160219140953.498 1099 00000 - 192.168.18.128:59571 0.0.0.0:0 0 0 0 transparent_filter_client() Success
160219140953.498 1099 00000 - 192.168.18.128:59571 0.0.0.0:0 0 0 0 217.112.35.75:80
160219140953.925 1099 00000 - 192.168.18.128:59571 127.0.0.1:1098 156 22 1
160219141120.411 1099 00000 - 0.0.0.0:1099 0.0.0.0:0 0 0 0 Accepting connections [4953/3078605632]
160219141124.401 1099 00000 - 192.168.18.128:59572 0.0.0.0:0 0 0 0 transparent_filter_client() Success
160219141124.401 1099 00000 - 192.168.18.128:59572 0.0.0.0:0 0 0 0 217.112.35.75:80
160219141126.053 1099 00000 - 192.168.18.128:59572 127.0.0.1:1098 156 22 1
160219141126.406 1099 00000 - 192.168.18.128:59573 0.0.0.0:0 0 0 0 transparent_filter_client() Success
160219141126.406 1099 00000 - 192.168.18.128:59573 0.0.0.0:0 0 0 0 217.112.35.75:80

from 3proxy.

bol-van avatar bol-van commented on August 19, 2024

Посмотрел код transparent plugin. Сразу бросается в глаза отсутствие поддержки IP6T_SO_ORIGINAL_DST, то есть ipv6 через это не заработает

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

Мне кажется проблема в том, что правилом OUTPUT ты перенаправляешь еще и трафик самого SOCKS'а который на той же машине. Попробуй
iptables -t nat -I INCOMING -p tcp --dport 80 -j REDIRECT --to-destination 127.0.0.1:1080
Или возможно что-то как-то недозавернуто и клиент получает ответ с IP-адреса самого сервера, а не того IP к которому обращался и поэтому соединение реджектится.
Тут лучше спросить у кого-нибудь, кто хорошо разбирается в iptables.

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

IPv6 - да, еще не правил.

from 3proxy.

bol-van avatar bol-van commented on August 19, 2024

Как еще можно не так iptables завернуть ? Если вместо 3proxy повесить ncat -l -p 1099, то в нем все видно что посылает curl. Я не первый раз имею дело с редиректами и делал свой transparent proxy на C для обхода DPI. "INCOMING" такой цепочки не существует, REDIRECT отличается от DNAT лишь тем, что работает только с локалхостом. Попробовал заменить DNAT на redirect - все то же самое. По логам совершенно ясно, что SO_ORIGINAL_DST выдает правильный IP. Там код простейший, разночтений быть не может. Рекурсия так же исключена, поскольку 3proxy не делает обращений на те же порты, а только на другой порт в socks.
Через цепочку PREROUTING так же не работает. PREROUTING работает только для проходящего трафика. Поэтому в vmware создал конфигурацию со шлюзом, шлюзом выступает та же система с 3proxy. Картина идентична. Ловится трафик ncat-ом, 3proxy подвисает.
Без transparent только лишь с tcppm на фиксированный адрес работает.

from 3proxy.

bol-van avatar bol-van commented on August 19, 2024

Redsocks завелся с теми же настройками за 1 минуту. На openwrt уже есть он готовый

from 3proxy.

olegwtf avatar olegwtf commented on August 19, 2024

Что-то с сайтом 3proxy.ru. Почините пожалуйста, как раз нужно документацию изучить

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

Да, я в курсе - документация доступна здесь: https://github.com/z3APA3A/3proxy/wiki

from 3proxy.

dchmaster avatar dchmaster commented on August 19, 2024

Нога попала в колесо... Откатился с 4 минора обратно на 3.
3proxy-0.8.4 на моей фре глючит нещадно. Подробный багрипорт, как обычно, позже.
Если коротко, то работает http/https proxy. После обновления порта через раз получаю, что в осле, что в мозиле, bad gateway. Страницы грузятся тоже через раз и не всегда полностью. И днс ресолвит не всегда корректно. А на 3proxy-0.8.3 все путём.

from 3proxy.

dchmaster avatar dchmaster commented on August 19, 2024

Ctrl-F5 несколько раз подряд в любом в браузере и все видно будет.

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

Если используется логгирование - попробуй 0.8.5.

from 3proxy.

dchmaster avatar dchmaster commented on August 19, 2024

Окей, попробую, но вечером уже. 0.8.5 еще в порты не приехала.

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

В качестве альтернативы можешь попробовать до команды log запустить любой сервис, например tcppm на несуществующий адрес, если поможет то это та же проблема.

from 3proxy.

dchmaster avatar dchmaster commented on August 19, 2024

Привет. В общем, я снова на 0.8.3. log не влияет на картину успеваемости. Ctrl-F5 жмешь несколько раз подряд и недогружаются темплейты, а затем bad gateway. Проверял в осле. Кэш браузера чистил.

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

В девеле фикс 5d0504c, войдет в 0.8.6

from 3proxy.

dchmaster avatar dchmaster commented on August 19, 2024

Спасибо. Уже не к спеху. Подожду релиза в портах. Удачи!

from 3proxy.

dchmaster avatar dchmaster commented on August 19, 2024

0.8.6 - все прекрасно. Тот функционал, который нужен мне, ошибок больше не создает.
Спасибо!

from 3proxy.

Rapatool avatar Rapatool commented on August 19, 2024

Аналогичная ситуация как у dchmaster.
Подключения проходят крайне редко, в большинстве случаев выдаёт:
502 Bad Gateway Host Not Found or connection failed

Centos 7 x86_64. 3proxy 0.8.6
в логах

d-03-2016 16:07:51 tolyan 212.119.233.60:10686 0.0.0.0:0 0 0 CONNECT static.xx.fbcdn.net:443 HTTP/1.1
d-03-2016 16:07:51 tolyan 212.119.233.60:18176 0.0.0.0:0 0 0 CONNECT www.facebook.com:443 HTTP/1.1
d-03-2016 16:07:52 tolyan 212.119.233.60:18177 0.0.0.0:0 0 0 CONNECT www.instagram.com:443 HTTP/1.1
d-03-2016 16:07:52 tolyan 212.119.233.60:18180 0.0.0.0:0 0 0 CONNECT staticxx.facebook.com:443 HTTP/1.1
d-03-2016 16:07:52 tolyan 212.119.233.60:18181 0.0.0.0:0 0 0 CONNECT www.facebook.com:443 HTTP/1.1
d-03-2016 16:07:52 tolyan 212.119.233.60:18178 0.0.0.0:0 0 0 CONNECT connect.facebook.net:443 HTTP/1.1
d-03-2016 16:07:52 tolyan 212.119.233.60:5770 0.0.0.0:0 0 0 CONNECT instagramstatic-a.akamaihd.net:443 HTTP/1.1
d-03-2016 16:07:53 tolyan 212.119.233.60:18182 0.0.0.0:0 0 0 CONNECT www.instagram.com:443 HTTP/1.1
d-03-2016 16:07:53 tolyan 212.119.233.60:18188 0.0.0.0:0 0 0 CONNECT www.facebook.com:443 HTTP/1.1
d-03-2016 16:07:53 tolyan 212.119.233.60:18184 0.0.0.0:0 0 0 CONNECT www.instagram.com:443 HTTP/1.1
d-03-2016 16:07:53 tolyan 212.119.233.60:18186 0.0.0.0:0 0 0 CONNECT instagramstatic-a.akamaihd.net:443 HTTP/1.1
d-03-2016 16:07:53 tolyan 212.119.233.60:18185 0.0.0.0:0 0 0 CONNECT connect.facebook.net:443 HTTP/1.1
d-03-2016 16:07:53 tolyan 212.119.233.60:18187 0.0.0.0:0 0 0 CONNECT staticxx.facebook.com:443 HTTP/1.1
d-03-2016 16:07:54 tolyan 212.119.233.60:18191 0.0.0.0:0 0 0 CONNECT instagramstatic-a.akamaihd.net:443 HTTP/1.1
d-03-2016 16:07:54 tolyan 212.119.233.60:18193 0.0.0.0:0 0 0 CONNECT www.facebook.com:443 HTTP/1.1
d-03-2016 16:07:54 tolyan 212.119.233.60:18190 0.0.0.0:0 0 0 CONNECT www.instagram.com:443 HTTP/1.1
d-03-2016 16:08:02 - 212.119.233.60:10666 2a06:c680::1:461:0 0 0
d-03-2016 16:08:02 - 212.119.233.60:10668 2a06:c680::1:461:0 0 0
d-03-2016 16:08:02 - 212.119.233.60:10662 2a06:c680::1:461:0 0 0
d-03-2016 16:08:02 - 212.119.233.60:10671 2a06:c680::1:461:0 0 0
d-03-2016 16:08:02 - 212.119.233.60:10672 2a06:c680::1:461:0 0 0
d-03-2016 16:08:02 - 212.119.233.60:10679 2a06:c680::1:461:0 0 0
d-03-2016 16:08:02 - 212.119.233.60:10678 2a06:c680::1:461:0 0 0
d-03-2016 16:08:02 - 212.119.233.60:10665 2a06:c680::1:461:0 0 0
d-03-2016 16:08:02 - 212.119.233.60:10667 2a06:c680::1:461:0 0 0
d-03-2016 16:10:49 tolyan 212.119.233.60:10680 2a00:bdc0:3:103:1:0:403:901:443 1372 6065 CONNECT login.vk.com:443 HTTP/1.1

конфиг

daemon

log /usr/local/etc/3proxy/logs/3proxy.log D
logformat "%d-%m-%Y %H:%M:%S %U %C:%c %R:%r %O %I %T"
rotate 10

pidfile /usr/local/etc/3proxy/3proxy.pid

maxconn 4000

nserver 8.8.8.8
nserver 2001:4860:4860::8888
nscache 65536
nscache6 65536

auth strong
users tolyan:CL:pass

proxy -4 -n -a -p...0 -ixxx.xxx.xxx -exxx.xxx.xxx
proxy -6 -n -a -p...1 -ixxx.xxx.xxx -e2a06:c680::1:45e
proxy -6 -n -a -p...2 -ixxx.xxx.xxx -e2a06:c680::1:45f
proxy -6 -n -a -p...3 -ixxx.xxx.xxx -e2a06:c680::1:460
...
flush
timeouts 1 5 30 60 180 1800 15 60

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

Поправь логи чтобы там код ошибки был и конфиг напиши. Заодно в логформате в начале добавь L или G, иначе у тебя первый символ съедается. К ситуации с dhcmaster у тебя отношения не имеет, судя про логам разрешение имен не проходит.

from 3proxy.

Rapatool avatar Rapatool commented on August 19, 2024

Аналогию провёл по признакам.
Конфиг добавил выше, лог с ошибками:

08-03-2016 09:38:12 00100 tolyan 212.119.233.60:1737 0.0.0.0:0 0 0 GET http://top-fwz1.mail.ru/js/code.js HTTP/1.1
08-03-2016 09:38:12 00000 tolyan 212.119.233.60:1740 2001:6d0:4001::2:80 422 563 GET http://www.tns-counter.ru/V13a***R%3E*vk_com/ru/UTF-8/tmsec=vksite_total/839308065 HTTP/1.1
08-03-2016 09:38:12 00100 tolyan 212.119.233.60:1738 0.0.0.0:0 0 0 GET http://counter.yadro.ru/hit?r;s1920*1080*24;uhttp%3A//vk.com/;0.029054001672193408 HTTP/1.1
08-03-2016 09:38:12 00100 tolyan 212.119.233.60:1741 0.0.0.0:0 0 0 GET http://b.scorecardresearch.com/p?c1=2&c2=13765216&c3=&c4=http%3A//vk.com/&c5=&c7=http%3A//vk.com/&c9=&c15=&cv=2.0&cj=1&rn=0.352357411524280$
08-03-2016 09:38:12 00000 tolyan 212.119.233.60:1742 2001:6d0:4001::2:80 464 429 GET http://www.tns-counter.ru/V13b***R%3E*vk_com/ru/UTF-8/tmsec=vksite_total/839308065 HTTP/1.1
08-03-2016 09:38:12 00000 tolyan 212.119.233.60:1731 2a00:bdc0:3:103:1:0:403:903:80 571 1479 GET http://vk.com/login.php?act=slogin&auto=1&to=&s=0 HTTP/1.1
08-03-2016 09:38:12 00000 tolyan 212.119.233.60:1734 2a00:bdc0:3:103:1:0:403:903:80 473 8418 GET http://vk.com/css/al/notifier.css?151 HTTP/1.1
08-03-2016 09:38:12 00000 tolyan 212.119.233.60:1731 2a00:bdc0:3:103:1:0:403:903:80 456 57343 GET http://vk.com/js/al/notifier.js?383 HTTP/1.1
08-03-2016 09:38:32 00508 - 212.119.233.60:1736 2a06:c680::1:461:0 0 0
08-03-2016 09:38:59 00000 tolyan 212.119.233.60:11598 2a03:2880:f006:16:face:b00c:0:25de:443 1368 2047 CONNECT www.facebook.com:443 HTTP/1.1
08-03-2016 09:39:37 00000 tolyan 212.119.233.60:1732 2a00:bdc0:3:103:1:0:403:903:80 554 6748 GET http://vk.com/ HTTP/1.1
08-03-2016 09:39:37 00000 tolyan 212.119.233.60:1732 2a00:bdc0:3:103:1:0:403:903:80 514 19849 GET http://vk.com/css/al/common.css?511 HTTP/1.1
08-03-2016 09:39:37 00000 tolyan 212.119.233.60:1737 2a00:bdc0:3:103:1:0:403:903:80 512 2320 GET http://vk.com/css/al/index.css?27 HTTP/1.1
08-03-2016 09:39:37 00000 tolyan 212.119.233.60:1736 2a00:bdc0:3:103:1:0:403:903:80 501 3762 GET http://vk.com/js/loader_nav19150_0.js HTTP/1.1
08-03-2016 09:39:37 00000 tolyan 212.119.233.60:1739 2a00:bdc0:3:103:1:0:403:903:80 496 10786 GET http://vk.com/js/lang0_0.js?6693 HTTP/1.1
08-03-2016 09:39:37 00000 tolyan 212.119.233.60:1738 2a00:bdc0:3:103:1:0:403:903:80 495 7005 GET http://vk.com/js/al/index.js?33 HTTP/1.1
08-03-2016 09:39:37 00000 tolyan 212.119.233.60:1740 2a00:bdc0:3:103:1:0:403:903:80 502 84759 GET http://vk.com/js/al/common.js?1129_190 HTTP/1.1
08-03-2016 09:39:37 00000 tolyan 212.119.233.60:1736 2a00:bdc0:3:103:1:0:403:903:80 527 25762 GET http://vk.com/images/join/prof_m.png?4 HTTP/1.1
08-03-2016 09:39:38 00000 tolyan 212.119.233.60:1739 2a00:bdc0:3:103:1:0:403:903:80 527 21845 GET http://vk.com/images/join/news_m.png?4 HTTP/1.1
08-03-2016 09:39:38 00000 tolyan 212.119.233.60:1741 2a00:bdc0:3:103:1:0:403:903:80 527 19635 GET http://vk.com/images/join/dial_m.png?4 HTTP/1.1
08-03-2016 09:39:38 00000 tolyan 212.119.233.60:1736 2a00:bdc0:3:103:1:0:403:903:80 541 2801 GET http://vk.com/images/hatf.gif?1 HTTP/1.1
08-03-2016 09:39:38 00000 tolyan 212.119.233.60:1743 2a00:bdc0:3:103:1:0:403:903:80 545 1266 GET http://vk.com/images/backlink.gif?4 HTTP/1.1
08-03-2016 09:39:38 00000 tolyan 212.119.233.60:1744 2a00:bdc0:3:103:1:0:403:903:80 541 568 GET http://vk.com/images/upload.gif HTTP/1.1
08-03-2016 09:39:38 00100 tolyan 212.119.233.60:1745 0.0.0.0:0 0 0 GET http://top-fwz1.mail.ru/js/code.js HTTP/1.1
08-03-2016 09:39:38 00000 tolyan 212.119.233.60:1742 2a00:bdc0:3:103:1:0:403:903:80 499 14937 GET http://vk.com/js/al/aes_light.js?89 HTTP/1.1
08-03-2016 09:39:38 00100 tolyan 212.119.233.60:1746 0.0.0.0:0 0 0 GET http://counter.yadro.ru/hit?r;s1920*1080*24;uhttp%3A//vk.com/;0.7746928012929857 HTTP/1.1
08-03-2016 09:39:38 00000 tolyan 212.119.233.60:1747 2001:6d0:4001::2:80 507 429 GET http://www.tns-counter.ru/V13a***R%3E*vk_com/ru/UTF-8/tmsec=vksite_total/222370355 HTTP/1.1
08-03-2016 09:39:38 00100 tolyan 212.119.233.60:1748 0.0.0.0:0 0 0 GET http://b.scorecardresearch.com/p?c1=2&c2=13765216&c3=&c4=http%3A//vk.com/&c5=&c7=http%3A//vk.com/&c9=&c15=&cv=2.0&cj=1&rn=0.715556441107764$
08-03-2016 09:39:38 00000 tolyan 212.119.233.60:1741 2a00:bdc0:3:103:1:0:403:903:80 614 1479 GET http://vk.com/login.php?act=slogin&auto=1&to=&s=0 HTTP/1.1
08-03-2016 09:39:38 00000 tolyan 212.119.233.60:1741 2a00:bdc0:3:103:1:0:403:903:80 499 57343 GET http://vk.com/js/al/notifier.js?383 HTTP/1.1
08-03-2016 09:39:38 00000 tolyan 212.119.233.60:1744 2a00:bdc0:3:103:1:0:403:903:80 516 8418 GET http://vk.com/css/al/notifier.css?151 HTTP/1.1
08-03-2016 09:39:41 00100 tolyan 212.119.233.60:1728 0.0.0.0:0 0 0 GET http://test-ipv6.com/ HTTP/1.1
08-03-2016 09:39:41 00100 tolyan 212.119.233.60:1749 0.0.0.0:0 0 0 GET http://test-ipv6.com/favicon.ico HTTP/1.1
08-03-2016 09:39:42 00100 tolyan 212.119.233.60:1750 0.0.0.0:0 0 0 GET http://test-ipv6.com/ HTTP/1.1
08-03-2016 09:39:42 00100 tolyan 212.119.233.60:1751 0.0.0.0:0 0 0 GET http://test-ipv6.com/favicon.ico HTTP/1.1
08-03-2016 09:39:45 00100 tolyan 212.119.233.60:1730 0.0.0.0:0 0 0 GET http://instagram.com/ HTTP/1.1
08-03-2016 09:39:45 00100 tolyan 212.119.233.60:1752 0.0.0.0:0 0 0 GET http://instagram.com/favicon.ico HTTP/1.1
08-03-2016 09:39:46 00100 tolyan 212.119.233.60:1753 0.0.0.0:0 0 0 GET http://instagram.com/ HTTP/1.1
08-03-2016 09:39:46 00100 tolyan 212.119.233.60:1756 0.0.0.0:0 0 0 GET http://instagram.com/favicon.ico HTTP/1.1

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

У тебя разрешение имен фейлится. При активной нагрузке не используй сервера гугл, поднимай свои или используй провайдера, т.к. у гугла есть рейтлимиты. IPv6 адрес в nserver возьми в []. И имей ввиду, что при использовании -6 не сможешь подключиться к серверам не имеющим AAAA (IPv6) записи.

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

А при использовании -4 - не сможешь подключиться к хостам IPv6.

from 3proxy.

Rapatool avatar Rapatool commented on August 19, 2024

Ну про -6 -4 то понятно.
А вот про днс, нагрузки то нет никакой.

from 3proxy.

dchmaster avatar dchmaster commented on August 19, 2024

2 z3APA3A:
Кстати, по случаю покурил свежие маны, порадовался и слегка модифицировал конфиг. Спасибо за инфу по DNS гугля. Мне никогда не доводилось превысить рейтлимиты, но знать про это будет весьма полезно. Я иногда их использую. А про DNS яндекса известно что-либо подобное?
И последнее. Может быть имеет смысл дать возможность перед компиляцией из порта выбрать вариант сборки с IPv6 или без? Такой вариант сейчас повсеместно используется в портах фри, а я, например, просто в make.conf добавляю OPTIONS_UNSET=X11 JAVA IPV6 NLS EXAMPLES DOCS и в ядре вырубаю IPv4, ибо мне пока и без него хорошо. :D

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

Любые публичные DNS-серверы имеют рейтлимиты, это защита от DNS amplification.
В CFLAGS в мейкфайле можно добавить -DNOIPV6

from 3proxy.

dchmaster avatar dchmaster commented on August 19, 2024

Ясно, спасибо. Я имел в виду вариант выбора с/без IPv6 при make config. Сейчас там только одна опция DOCS. Тогда просто при работе portupgrade обновление бинарников будет автоматически проходить с компиляцией без поддержки в них IPv6.

from 3proxy.

barihide avatar barihide commented on August 19, 2024

Вопрос по 3proxy-0.8.6 win X64 (160307165135). В админке (в отличие от 0.7.x) текущий трафик указывается в байтах. Есть ли параметр вывода его как в 0.7.x (там он выводился в Мбайтах, насколько я помню).

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

В 3proxy 0.8 больше не используется плавающая точка, но используется 64-битная арифметика, которой не было в 0.7. Поэтому изменен формат вывода и счетчиков и веб интерфейса и обратной совместимости уже не будет.

from 3proxy.

logan23 avatar logan23 commented on August 19, 2024

IPv6 адрес в nserver возьми в []

3proxy.cfg
nserver [2001:4860:4860::8888]
nserver [2001:4860:4860::8844]

service 3proxy start
Starting 3Proxy
Command: 'nserver' failed with code 1, line 6

Без скобок запускается нормально.
0.8.6 Centos

И еще вопрос - можно ли, что б -e был рандомный из списка? Что было что то вроде этого:
proxy -a -n -iinternalAdress -pPort -e listWithExternalsIps

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

Можно через правило extip для parent. Например
auth iponly
allow *
parent 333 extip IP1 0
parent 333 extip IP2 0
parent 334 extip IP3 0
proxy
каждый из IP будет выбираться с вероятностью 1/3

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

nserver с номером порта и скобками попробуй в devel с этим патчем f347b37

from 3proxy.

devilus avatar devilus commented on August 19, 2024

Возможно ли пустить трафик для одного определенного хоста (данный хост не поддерживает ipv6) минуя IPv6 а сразу отправить запрос на IPv4? Помнится в squid можно было прописать такое в конфиге.
Спасибо.

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

Можно, например ACL
allow user * 1.2.3.4
deny * * 0.0.0.0/0
разрешит доступ к 1.2.3.4 и запретит ко всем остальным IPv4
но для этого все равно надо запускать прокси с -64

from 3proxy.

devilus avatar devilus commented on August 19, 2024

Нет вы не поняли, есть софт, который проверяет свою лицензию, делая запрос на сайт (хост не поддерживает ipv6), без этого он не может работать, возможно ли как то внести этот сайт в конфиг, чтобы запрос на него шел сразу всегда с ipv4?
И еще, если использовать -64, то выходит что все конечные ресурсы будут видеть один ipv4 адрес и скрыть его никак нельзя?

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

Я уже ответил на этот вопрос.

from 3proxy.

devilus avatar devilus commented on August 19, 2024

А ну да простите, с четвертого раза прочитал понял) А что по поводу последнего вопроса? Будут ли хосты видеть всегда ipv4 с опцией -64?

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

Что значит "видеть"? Подключиться не смогут, если ты ограничишь через ACL

from 3proxy.

devilus avatar devilus commented on August 19, 2024

"Видеть" значит если 20 аккаунтов зайдут через прокси ipv6 в какой-нибудь инстаграм или ВК, то поймет ли удаленный хост что зашли на него не через уникальный ipv6, а через один и тот же ipv4 в итоге.

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

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

from 3proxy.

devilus avatar devilus commented on August 19, 2024

Возник непонятный момент с разрешением доступа к одному хосту по IPv4

allow * * MY_ALLOW_IP/0
deny * * 0.0.0.0/0
allow * USER_IP * *
users "USER1:CR:123"
allow USER1
proxy -64 -n -a -p10094 -iIP_HOST -eIPv6
socks -64 -p30094 -iIP_HOST -eIPv6
flush

MY_ALLOW_IP - один адрес, к которому нужно доступ через IPv4, ко всем остальным - только IPv6
Но теперь браузер при заходе через прокси начинает запрашивать логин/пароль даже при заходе с IP USER_IP, а нужно, чтобы клиент с USER_IP авторизовывался по IP без вопросов. Подскажите.

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

А auth какой используется?
и если один адрес, то почему MY_ALLOW_IP/0 ?

from 3proxy.

devilus avatar devilus commented on August 19, 2024

auth ip only strong
Это один адрес сервера к которому нужно обратится по ipv4 для всех юзеров, неправильная запись?

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

auth iponly strong
без пробела. Если один адрес, то должно быть либо /32 либо вообще не надо указывать CIDR.

from 3proxy.

devilus avatar devilus commented on August 19, 2024

Да у меня без пробела, проблема в том, что страницы то в браузере открываются и при заходе через разрешенный IP юзера, но при каждом переходе куда то вываливается на первый план окошко ввода логина/пароля все равно и приходится жать отмену или ок на нем, а оно опять появляется, а например если в какой нибудь софт вставить прокси, то нормально все. То есть влияет именно эта первая строка allow * * MY_ALLOW_IP как-то на эту багу, CIDR сейчас убрал - то же самое.

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

после allow USER1 добавь deny *

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

Но вообще как ты планируешь без запроса пароля отличить USER1 от другого юзера?

from 3proxy.

devilus avatar devilus commented on August 19, 2024

У меня на каждого юзера свой блок такого вида:

allow * * MY_ALLOW_IP
deny * * 0.0.0.0/0
allow * USER_IP * *
users "USER1:CR:123"
allow USER1
proxy -64 -n -a -p10094 -iIP_HOST -eIPv6
socks -64 -p30094 -iIP_HOST -eIPv6
flush

allow * * MY_ALLOW_IP
deny * * 0.0.0.0/0
allow * USER_IP2 * *
users "USER2:CR:123"
allow USER2
proxy -64 -n -a -p10095 -iIP_HOST -eIPv6
socks -64 -p30095 -iIP_HOST -eIPv6
flush

allow * * MY_ALLOW_IP
deny * * 0.0.0.0/0
allow * USER_IP3 * *
users "USER3:CR:123"
allow USER3
proxy -64 -n -a -p10096 -iIP_HOST -eIPv6
socks -64 -p30096 -iIP_HOST -eIPv6
flush

У каждого свои логин/пароль, привязанный IP, адреса http/socks

P.S. окошко все равно вываливается после добавления deny *

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

При твоем конфиге как только клиент обращается к IPv6 адресу - он получает запрос на авторизацию.

from 3proxy.

devilus avatar devilus commented on August 19, 2024

Так как же сделать правильно? Изменить порядок команд? Я уже который день бьюсь.

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

Сначала придумать непротиворечивую логику, по которой разрешать/запрещать/запрашивать логин с паролем, потом записать ее в виде ACL

from 3proxy.

devilus avatar devilus commented on August 19, 2024

Сколько держит одновременно коннектов 3proxy? Cейчас делаю в include 300 http и 300 socks адресов на разных портах, 3proxy стал запускаться (htop начинает показывать много процессов 3proxy) и сразу же падать. Куда копать? В логах нет никаких алертов. Началось это после последнего добавления 100 http и 100 socks записей в конфиг.

Заметил, делаем рестарт, идет много записей Accepting connectios и резко лог обрывается:

1463837194.517 21.05.2016 09:26:34 SOCKS:30337 00000 - 185.118.66.86:30337 2a07:14c0:0:8024:a88:6eb2:a7fa:643c:0 0 0 0 Accepting connections [2415/3058636544]
1463837194.519 21.05.2016 09:26:34 PROXY:10338 00000 - 185.118.66.86:10338 2a07:14c0:0:801e:d1e4:9abe:77a5:6b7:0 0 0 0 Accepting connections [2415/3058603776]
1463837194.520 21.05.2016 09:26:34 SOCKS:30338 00000 - 185.118.66.86:30338 2a07:14c0:0:801e:d1e4:9abe:77a5:6b7:0 0 0 0 Accepting connections [2415/3058571008]
1463837194.521 21.05.2016 09:26:34 PROXY:10339 00000 - 185.118.66.86:10339 2a07:14c0

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

Смотри лимиты и физические ресурсы по памяти/сокетам/процессам.

from 3proxy.

devilus avatar devilus commented on August 19, 2024

ulimit 16000, maxconn 8000, и все равно не работает(( ОЗУ 1ГБ, свободной полно, плюс swap еще
Если закомментить include этого файла с запуском прокси на портах, то запускается. Подскажите, это катастрофа.

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

1600 что?
У тебя 600 запущенных прокси, при maxconn 8000 тебе может потребоваться до почти 10000000 сокетов.

from 3proxy.

devilus avatar devilus commented on August 19, 2024

16000 - open file limit (ulimit -n отображает 16384). Ну я рассчитывал 64K ОЗУ на каждый коннект, и по мере роста докупать ресурсы физические. Как-то можно увеличить это число сокетов или это и есть тот самый file limit?

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

При 64K на каждый коннект тебе надо 640 терабайт оперативки.

from 3proxy.

devilus avatar devilus commented on August 19, 2024

В общем не знаю, в инете пишут что поднимают по паре десятков тысяч прокси и ничего.
Я поднял все ulimit какие только можно, добавил оперативки и тоже самое - стоит превысить определенное количество IP и все крашится с обрывом лога. Причем если адресов указанных в конфиге 3proxy нет на сетевом интерфейсе, то 3proxy запускается, только стоит добавить эти адреса на eth0 сразу краш...мистика просто.

Вот запись в audit.log
type=ANOM_ABEND msg=audit(1463848595.369:137): auid=0 uid=99 gid=99 ses=2 pid=8043 comm="3proxy" reason="memory violation" sig=11

Описание ошибки
Signal 11, or officially know as "segmentation fault", means that the program accessed a memory location that was not assigned. That's usually a bug in the program. So if you're writing your own program, that's the most likely cause.

Оперативки свободной на сервере валом + swap на всякий.

UPD: вот запись в syslog в момент крэша
kernel: [ 234.500582] 3proxy[8839]: segfault at 7f117f050ff0 ip 00007f119edef68c sp 00007f117f050ff0 error 6 in libc-2.19.so[7f119eceb000+1a2$00+1a2000]

from 3proxy.

devilus avatar devilus commented on August 19, 2024

Здравствуйте, такой вопрос. В /etc/hosts есть некоторые записи, которые должны использоваться обязательно и они работают если не указывать в конфиге 3proxy опции nserver, но если включить в конфиге nserver и nscache, то hosts записи игнорируются. Можно ли как то совместить hosts с nserver в конфиге? Спасибо.

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

нет, встроенный резолвер как раз и нужен, чтобы не использовать системный. Если нужны какие-то записи их можно добавить через nsrecord.

from 3proxy.

devilus avatar devilus commented on August 19, 2024

Здравствуйте. На что влияет параметр maxconn в конфиге, нужно ли его увеличивать и какой выставлять вообще? (Я читал в документации про количество соединений, но на практике так и непонятно на что это влияет) Плюс нужно ли повторять эту опцию после каждого flush? Спасибо.

from 3proxy.

shark136 avatar shark136 commented on August 19, 2024

Устанавливает максимальное количество устанавливаемых соединений, для каждого сервиса прописанного после этой команды. по умолчанию - 100
(И пусть меня поправит автор если я ошибаюсь) да, каждое правило для отдельно взятого сервиса. так что Flush должен сбрасывать по идее для всех. Мне лично не приходилось так делать, но думаю это логично.

from 3proxy.

devilus avatar devilus commented on August 19, 2024

Это теория. На практике на что этот параметр влияет? Возьмем пример, запущено 500 http и 500 socks прокси, что даст ограничение maxconn 100? Не даст трафику пройти одновременно через 500 прокси и дропнет 400 из них в определенный момент времени или что?

from 3proxy.

devilus avatar devilus commented on August 19, 2024

Здравствуйте.
Подскажите в чем может быть проблема, используются http ipv6, в браузере работают без проблем. А в софте proxifier чекер говорит что коннект есть, но когда через него пускаешь браузер, валится куча ошибок "Proxy server cannot establish a connection with the target, status code 502" В логах видно такие записи при этом 91.215.78.234:33488 0.0.0.0:0 0 0 0 CONNECT 31.13.90.52:443 HTTP/1.1
Это проблема самого proxifier или может проблема в моих днс (использую свой bind) или же в конфигурации 3proxy может крыться проблема?
Спасибо.

from 3proxy.

PatSpiegel avatar PatSpiegel commented on August 19, 2024

Centos 7 - 3proxy 0.8.6 и devel
3proxy ложится при 500 шт ipv6 и зайти на https (в основном в vk.com).
К порту больше не конектит, только ребут 3proxy, но проходит 1-2 попытки конекта, но не загружает страницу (виснит) и заново ложится (Could not connect to SERVER_IP:40050).
При 100 шт, нормально работает.
Если уменьшить ипы в ifcfg-eth0 до 100, всё работает как надо.
В логах ошибок нету.
PS: ипы рабочие, пинг по всем +500 ip проходит.

/var/log/messages
Jul 16 05:51:30 57093 kernel: 3proxy[22671]: segfault at 7f9bbf1edfd0 ip 00007f9bc03406d6 sp 00007f9bbf1edfd0 error 6 in libc-2.17.so[7f9bc0226000+1b7000]
Jul 16 05:57:32 57093 kernel: 3proxy[23211]: segfault at 7f29aceecfd0 ip 00007f29ae03f6d6 sp 00007f29aceecfd0 error 6 in libc-2.17.so[7f29adf25000+1b7000]

3proxy.cfg
pidfile /var/run/3proxy.pid

log /usr/local/etc/3proxy/logs/3proxy.log D
logformat "%d-%m-%Y %H:%M:%S %U %C:%c %R:%r %O %I %T"
rotate 10

daemon
maxconn 100
nscache 65536
timeouts 1 5 30 60 180 1800 15 60
setgid 65535
setuid 65535
flush
auth iponly
allow * 11.11.11.11
allow * 22.22.22.22

#PROXY
proxy -6 -n -a -p40000 -iSERVER_IP_v4 -e2a04:ac00:1:6a1f:148c:7c1b:e71e:a9ce
proxy -6 -n -a -p40001 -iSERVER_IP_v4 -e2a04:ac00:1:6a1f:1ec1:4b80:f993:1842
и так до 40499
proxy -6 -n -a -p40499 -iSERVER_IP_v4 -e2a04:ac00:1:6a1f:2bc5:27e4:9c56:478f

/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
BOOTPROTO="none"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE=Ethernet
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
ARPCHECK="no"
IPADDR=11.11.213.56
PREFIX=21
GATEWAY=11.11.213.1
IPV6INIT=yes
IPV6ADDR=2a04:ac00:1:6a1f:5054:ff:fe00:9b2b
IPV6_DEFAULTGW=2a04:ac00:1:6a1f::1
IPV6FORWARDING=yes
NAME="eth0"
DNS1=8.8.8.8
DNS2=8.8.4.4
DNS3=2001:4860:4860::8888
DNS4=2001:4860:4860::8844
IPV6ADDR_SECONDARIES="2a04:ac00:1:6a1f:148c:7c1b:e71e:a9ce/64
2a04:ac00:1:6a1f:1ec1:4b80:f993:1842/64
<МНОГО IPv6>
2a04:ac00:1:6a1f:2bc5:27e4:9c56:478f/64
"

3proxy.log
d-07-2016 06:12:07 - IP_SERVER:40000 2a04:ac00:1:6a1f:148c:7c1b:e71e:a9ce:0 0 0 Accepting connections [24849/563373824]
d-07-2016 06:12:07 - IP_SERVER:40001 2a04:ac00:1:6a1f:1ec1:4b80:f993:1842:0 0 0 Accepting connections [24849/563341056]
<так же прогружаются все ипы>
d-07-2016 06:12:08 - IP_SERVER:40499 2a04:ac00:1:6a1f:2bc5:27e4:9c56:478f:0 0 0 Accepting connections [24849/66189056]
d-07-2016 06:12:11 - 33.33.146.154:59901 2a00:bdc0:3:103:1:0:403:807:80 0 0 CONNECT vk.com:80 HTTP/1.1
d-07-2016 06:12:13 - 33.33.146.154:59904 2a00:bdc0:3:103:1:0:403:906:80 0 0 CONNECT vk.com:80 HTTP/1.1
d-07-2016 06:12:14 - 33.33.146.154:59905 2a00:bdc0:3:103:1:0:403:906:80 0 0 CONNECT vk.com:80 HTTP/1.1

from 3proxy.

alx87 avatar alx87 commented on August 19, 2024

CentOS 6.8 - 3proxy 0.8.6
По какой причине может периодически возникать ситуация, что запускается несколько процессов 3proxy?
Процесс такой:
При необходимости внести изменения в конфиг 3прокси, делаю service 3proxy stop, вношу изменения (заменяю файл конфига), затем service 3proxy start

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

Сначала убедись, что это действительно разные процессы, а не разные потоки одного процесса. Если это действительно разные процессы, то надо смотреть содержимое rc-файла. Возможно, например, он убивает процесс по pid из pid-файла а ты не задаешь расположение pid-файла или задаешь его до команды daemon, daemon меняет pid процесса.

from 3proxy.

alx87 avatar alx87 commented on August 19, 2024

Номера у процессов разные, pid файл после демона.
О каком rc файле идет речь?

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

Об rc-скрипте который вы запускаете через service.

from 3proxy.

z3APA3A avatar z3APA3A commented on August 19, 2024

Еще это может быть вот эта проблема:
#92
попробуйте фикс.

from 3proxy.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.