Не работает потоковое видео через Pfsense
-
Pfsense 2.0.1 / squid + guard
Суть вот в чем.. В сети есть сервер avreg, на который подключены айпи камеры. Данный сервер умеет успешно транслировать видео с этих камер в браузеры через несложный скрипт ( тут текст скрипта текст скрипта с сайта Аврега )
Так вот.. понадобилось мне чтоб с только с 1 камеры (столовая) все юзеры могли видеть в своих браузерах загруженность. В моей сети есть внутренний сайт на битриксе.
Я создал новую страничку, разместил скрипт. Все отлично заработало на моем пк.Но совсем не работает на ПК юзеров, в IE. Все IE настроены на работу через сквид по порту 3333.
Все сервера и Пк находятся в одной сети.
Я добавил порт трансляции с аврега "874" в acl safeports и acl sslports - от безысходности…. И как же я удивился что заработало ))
Работало пол дня.. потом резко прекратилось. Что делать не знаю :(
Надо сказать, что скрипт я настроил на обновление в 0.1сек = 100мс ... Подумал я что Пф сенс решил что это ДДОС какой-либо и заблокировал все нафиг, может и еще что.
Теперь я поставил 3 сек.. от греха.Сервер видео 192.168.3.131 - порт 874. Веб-сервер, на котором выполняется скрипт и к которому обращаются юзеры, 192.168.3.203 .
Схема мне видится такой :
- Юзер делает запрос на странице в ИЕ (через прокси 192.168.3.254:3333) к 192.168.3.203.
- Веб - сервер 192.168.3.203,отрабатывая скрипт, обращается к видеосерверу 192.168.3.131.
- Видеосервер отдает видео поток на 3.203 , а тот в свою очередь должен отдать в окно браузера пользователя.
- Обратный маршрут 192.168.3.131 - 192.168.3.203 - 192.168.3.254 - Пк Юзера. прокладка 192.168.3.254, через которую работают все IE путает маршруты... или порты.
Помогите пожалуйста разобраться.
П.с. когда я убираю на любом пк настройки прокси в ИЕ все начинает работать отлично само собой.
Прилагаю лог , который получается ,если я выполняю скрипт через прокси.
tcp 192.168.3.254:23634 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2
tcp 192.168.3.254:57181 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2
tcp 192.168.3.254:35080 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2
tcp 192.168.3.254:23388 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2
tcp 192.168.3.254:5507 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2
tcp 192.168.3.254:24265 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2
tcp 192.168.3.254:48601 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2
tcp 192.168.3.254:32112 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2
tcp 192.168.3.254:36283 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2
tcp 192.168.3.254:48526 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2
tcp 192.168.3.254:60448 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2
tcp 192.168.3.254:18023 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2
tcp 192.168.3.254:18686 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2
tcp 192.168.3.254:18688 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2
tcp 192.168.3.254:18689 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2
tcp 192.168.3.254:18690 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2
tcp 192.168.3.254:18691 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2
tcp 192.168.3.254:18692 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2
tcp 192.168.3.254:18693 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2
tcp 192.168.3.254:18694 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2
tcp 192.168.3.254:18695 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2
tcp 192.168.3.254:18696 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2
tcp 192.168.3.254:18697 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2
tcp 192.168.3.254:18698 -> 192.168.3.203:80 FIN_WAIT_2:FIN_WAIT_2 -
а нельзя, в каком либо браузере, оставить настройки без прокси для вашей видеокамеры и не мучить pfsense
-
нельзя , к сожалению.
-
2 Monarh
Зачем вы исп. прокси для обращения к локальным ресурсам ?? -
очень верный вопрос.. но у меня почему-то не получается иначе.
Галочка в ИЕ "не использовать прокси сервер для локальных адресов " включено 100% на всех ИЕ.
Если можете, подскажите пожалуйста в чем проблема и почему ИЕ все равно ломится через прокси?
И все же.. почему так ПФсенс себя повел? Там есть защита от ДДОС (и она сработала) или ее нет?
-
В настройках сквида есть галка "Не исп. прокси для локальных адресов" (только на англ., ес-но). Поставьте ее.
-
хм.
проглядел 3 раза настройки прокси сервера и прокси фильтра.. Не такой галочки do not use proxy server for local addresses или подобных.squid 2.7.9
Bypass proxy for Private Address Space (RFC 1918) destination - речь не об этом ли ? Если да, то поставить галочку там нельзя, поле не активно. Оно активно только при прозрачном прокси, но у меня он не прозрачен соответственно.
-
Галочка в ИЕ "не использовать прокси сервер для локальных адресов " включено 100% на всех ИЕ.
Если можете, подскажите пожалуйста в чем проблема и почему ИЕ все равно ломится через прокси?До семёрки включительно галочка добавляла только адрес 127.0.0.1. Остальные адреса приходилось добавлять руками отдельно, либо ссылаясь на PAC скрипт.
-
проблему решил добавив в политиках АДа заперт на использования прокси для адресов 192.168.3.*
Остается вопрос, где же галочка в Пфсенсе, она может пригодится .
И мне очень интересно почему Пфсенс заблокировал множественные обращения к видеосерверу.
-
https://forum.pfsense.org/index.php?topic=5897.0
http://www.docunext.com/blog/2007/12/how-i-use-apache-behind-pfsense.html
Apache can sometimes cause problems when configured certain ways in certain environments with certain clients.
Like FIN_WAIT_2.
If you setup Apache behind a pfSense firewall you might notice a lot of FIN_WAIT_2 states in your table. This isn't necessary, and as I understand it is caused by sloppy http clients that never send the FIN/ACK to close the tcp connection.
There are a few things I've done to alleviate this issue:
Turn off KeepAlive in Apache
Reduce the tcp timeout on the Apache server using sysctl ( I use net.ipv4.tcp_keepalive_time = 1800 )
Reduce the fin timeout (I use net.ipv4.tcp_fin_timeout = 20 )
Change the firewall optimization setting to aggressive (but actually I've switched it back to normal for the time being)The more I read about this, the more I feel its not a serious problem, unless you have several thousand FIN_WAIT_2 states. The one's I'm mostly confused about are the ones from the firewall to the server:
192.168.3.1:43147 -> 192.168.3.2:80There are usually many of these, and I'm not sure exactly why there needs to be so many. I think it may be since I'm using the load balancer, instead of simple nat, which I think would directly use the web server's settings for keeping state.
Thankfully, pfSense has the “advanced” option for each firewall rule. I went into the rule for port 80, and reduced the timeout for that rule to 20, though I may reduce it more.