Страница 1 из 3
как улучшить чувствительность altq к изменениям в очередях?
Добавлено: 2011-04-07 1:07:56
mainbrain
есть такие очереди :
внешний интерфейс
внутренний интерфейс
Код: Выделить всё
uname -a
FreeBSD 8.2-RELEASE FreeBSD 8.2-RELEASE
Код: Выделить всё
altq on $ext_if priq bandwidth 1100Kb queue {gameport_out def_out}
queue gameport_out priority 15 priq
queue def_out priority 0 priq (default ,red )
altq on $int_if priq bandwidth 2900Kb queue {gameport_in def_in}
queue gameport_in priority 15 priq
queue def_in priority 0 priq (default ,red )
весь конфиг пока что приводить не буду.
altq у меня работает, снижая пинг в играх с 1000 до примерно 25-60 при 100% (постоянной) загрузке канала
НО!!!
altq медленно реагирует на резкое увеличение трафика в очереди default и не успевает его вовремя ограничить
выглядит это примерно так
Код: Выделить всё
Ответ от 213.180.204.3: число байт=32 время=23мс TTL=54
Ответ от 213.180.204.3: число байт=32 время=21мс TTL=54 нет закачек
Ответ от 213.180.204.3: число байт=32 время=21мс TTL=54 нет закачек
Ответ от 213.180.204.3: число байт=32 время=121мс TTL=54 !!!!!!!!!!!!!!!!!!!старт закачки
Ответ от 213.180.204.3: число байт=32 время=165мс TTL=54 !!!!!!!!!!!!!!!!!!!!! лаги
Ответ от 213.180.204.3: число байт=32 время=60мс TTL=54 !!!!!!!!!!!!!!!!!!!!!!! лаги
Ответ от 213.180.204.3: число байт=32 время=35мс TTL=54 !!!!!!!совсем чуть чуть лагов
Ответ от 213.180.204.3: число байт=32 время=23мс TTL=54 закачка идет дальше
Ответ от 213.180.204.3: число байт=32 время=21мс TTL=54 закачка идет дальше
Ответ от 213.180.204.3: число байт=32 время=21мс TTL=54 закачка идет дальше
Ответ от 213.180.204.3: число байт=32 время=21мс TTL=54 закачка идет дальше
Ответ от 213.180.204.3: число байт=32 время=22мс TTL=54 закачка идет дальше
подскажите , что тут можно сделать?
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 1:21:05
Гость
попробовать тип фифо менять
default, red, итд по мануалу
ну вот как пример
Код: Выделить всё
# set up priority queuing. The two lowest classes are using the Random Early
# Detect (or Drop) to start dropping packets as the queue length increases.
# For general web-wanking and unclassified connections, some packet loss is
# acceptable. For the more interactive and time-sensitive protocols loss is
# unacceptable.
altq on $EXT priq bandwidth $UP queue {ultra, fast, norm, slow}
queue slow priority 1 priq(default, red)
queue norm priority 4 priq(red)
queue fast priority 5
queue ultra priority 6
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 1:23:38
Гость
да кстати я проглядел
у вас отсутсувет понимание как работает очередь
она у вас и на внешнем и на внутренем интерфейсе
ну на внешнем еще понимаю
а на внутреннем зачем?
и почему приоритеты одинаковые ? - 0
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 8:06:21
mainbrain
она у вас и на внешнем и на внутренем интерфейсе
потому что если оставить только на внешнем , то ограничение вообще не работает,
на внешнем очередь ограничивает исходящий трафик
на внутреннем входящий, перепробовал множество вариантов (с очередями только на одном интерфейсе), о которых пишут в инете, они все не работают.
тем более как я сделаю только на одном интерфейсе , если канал ассимметричный, исходящий меньше входящего аж в 2 раза.
может в конфиге что то не так, но эта схема работает, если отключить altq то пинги становятся по 400-1200
и почему приоритеты одинаковые ? - 0
если вглядеться , то они все таки разные, например, для исходящих пакетов
приведу все таки конфиг
Код: Выделить всё
ext_if = "vr0" # external interface
int_if = "rl0" # internal interface
game_port = "{6112 , 4000 , 5795, 3724, 1513, 6113 , 6114, 6115, 6116, 6117, 6118, 6119 ,1119 , 1513, 1514, 8688, 7456, 6200, 8080}"
lan="10.75.0.0/24"
ext_ip="xx.xx.xx.xx"
int_ip="10.75.0.1"
set optimization aggressive
scrub in on $ext_if all fragment reassemble min-ttl 20 max-mss 1440
scrub in on $ext_if all no-df
scrub on $ext_if all reassemble tcp
#altq on $ext_if hfsc bandwidth 1100Kb queue {gameport_out def_out}
#queue gameport_out bandwidth 30% priority 7 hfsc (red)
#queue def_out bandwidth 1% priority 0 hfsc (default , red , rio)
#altq on $int_if hfsc bandwidth 2800Kb queue {gameport_in def_in}
#queue gameport_in bandwidth 30% priority 7 hfsc (red)
#queue def_in bandwidth 1% priority 0 hfsc (default ,red , rio )
altq on $ext_if priq bandwidth 1100Kb queue {gameport_out def_out}
queue gameport_out priority 15 priq
queue def_out priority 0 priq (default ,red )
altq on $int_if priq bandwidth 2900Kb queue {gameport_in def_in}
queue gameport_in priority 15 priq
queue def_in priority 0 priq (default ,red )
#rdr pass on $ext_if proto {tcp udp} from any to $ext_if port 24978 -> 10.75.0.2 port 24978
## NAT
nat on $ext_if from $int_if:network to any -> ($ext_if)
rdr pass on $ext_if proto {tcp} from any to $ext_ip port 6112 -> 10.75.0.12 port 6112 #переадресация, чтоб создать сервер игры на внешнем ip
block in log on $ext_if
antispoof log quick for { lo0, $int_if, $ext_if }
pass in quick on $int_if proto tcp from !$lan to $lan port $game_port queue gameport_in
pass in quick on $int_if proto udp from !$lan to $lan port $game_port queue gameport_in
pass in quick on $int_if proto tcp from !$lan port $game_port to $lan queue gameport_in
pass in quick on $int_if proto udp from !$lan port $game_port to $lan queue gameport_in
pass in quick on $int_if inet proto icmp from !$lan to $lan icmp-type echoreq queue gameport_in
pass in quick on $int_if inet proto icmp from !$lan to $lan icmp-type echorep queue gameport_in
pass in quick on $int_if inet proto icmp from !$lan to $lan icmp-type unreach queue gameport_in
pass out quick on $ext_if proto tcp from $ext_ip to any port $game_port queue gameport_out
pass out quick on $ext_if proto udp from $ext_ip to any port $game_port queue gameport_out
pass out quick on $ext_if proto tcp from $ext_ip port $game_port to any queue gameport_out
pass out quick on $ext_if proto udp from $ext_ip port $game_port to any queue gameport_out
pass out quick on $ext_if inet proto icmp from $ext_ip to any icmp-type echoreq queue gameport_out
pass out quick on $ext_if inet proto icmp from $ext_ip to any icmp-type echorep queue gameport_out
pass out quick on $ext_if inet proto icmp from $ext_ip to any icmp-type unreach queue gameport_out
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 8:07:41
mainbrain
pftop
Код: Выделить всё
pfTop: Up Queue 1-4/4, View: queue, Cache: 10000 05:07:19
QUEUE BW SCH PRIO PKTS BYTES DROP_P DROP_B QLEN BORROW SUSPEN P/S B/S
gameport_out priq 15 30444 2253288 0 0 0 1.0 73
def_out priq 0 307163 172615K 11500 8893279 0 0.2 11
gameport_in priq 15 30620 2271577 0 0 0 1.0 73
def_in priq 0 402704 473385K 1902 2387030 0 1.0 220
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 8:08:37
mainbrain
как видно из pftop, пакеты из очередей default действительно дропаются , а из игровых очередей ни одного не дропнулось ни разу
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 8:20:31
mainbrain
Код: Выделить всё
у вас отсутсувет понимание как работает очередь
согласен

все почти наугад делаю )
а все из за того , что не понять , где правда в доках а где бред, потому что на моем инете почему то даже из официальных примеров pf конфиги с altq не работают так как надо
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 8:28:58
mainbrain
попробовать тип фифо менять
default, red, итд по мануалу
ставил на очереди red rio ecn , оказывает мало влияния,
подбирал qlimit . tbrsize
но практика показала , что их лучше не трогать, улучшений никаких, только хуже
тип фифо
это как?
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 9:03:25
mainbrain
Очереди создаются на основе некой стратегии. По умолчанию, без использования ALTQ, используется FIFO (first, in first out)
dreamcatcher.ru
Вы про это?
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 9:17:41
mainbrain
насчет скорости реакции altq(red)
altq_red.c
в исходнике нашел вот что
Код: Выделить всё
/* red parameters for drop probability */
#define INV_P_MAX 10 /* inverse of max drop probability */
#define TH_MIN 5 /* min threshold */
#define TH_MAX 15 /* max threshold */
не эти ли переменные определяют начало отброса пакетов??
как ими управлять?
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 9:18:27
mainbrain
и еще altq_rio.c
Код: Выделить всё
* AF DS (differentiated service) codepoints.
* (classes can be mapped to CBQ or H-FSC classes.)
*
* 0 1 2 3 4 5 6 7
* +---+---+---+---+---+---+---+---+
* | CLASS |DropPre| 0 | CU |
* +---+---+---+---+---+---+---+---+
*
* class 1: 001
* class 2: 010
* class 3: 011
* class 4: 100
*
* low drop prec: 01
* medium drop prec: 10
* high drop prec: 01
*/
/* normal red parameters */
#define W_WEIGHT 512 /* inverse of weight of EWMA (511/512) */
/* q_weight = 0.00195 */
/* red parameters for a slow link */
#define W_WEIGHT_1 128 /* inverse of weight of EWMA (127/128) */
/* q_weight = 0.0078125 */
/* red parameters for a very slow link (e.g., dialup) */
#define W_WEIGHT_2 64 /* inverse of weight of EWMA (63/64) */
/* q_weight = 0.015625 */
/* fixed-point uses 12-bit decimal places */
#define FP_SHIFT 12 /* fixed-point shift */
/* red parameters for drop probability */
#define INV_P_MAX 10 /* inverse of max drop probability */
#define TH_MIN 5 /* min threshold */
#define TH_MAX 15 /* max threshold */
#define RIO_LIMIT 60 /* default max queue lenght */
#define RIO_STATS /* collect statistics */
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 9:26:42
mainbrain
да, я могу поставить на полезные очереди (gameport) red
но в мане пишут что red не работает с протоколом icmp
и улучшения мы сможем определить только войдя в игру, где используется другой протокол,
но хочется все же еще пинги оптимизировать
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 9:33:56
mainbrain
итак...проведем эксперимент..
при установке red на игровые очереди в них начинают дропаться пакеты, это неприемлемо...
при установке во все очереди red+rio пакеты не дропаются , но игра становится чуть-чуть "дерганой"
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 10:23:10
Гость
altq должна стоять на внешнем интерфейсе и только
потому что очередь срабатывает после того как исходящий пакет пометился altq и ему в соответсвие пришел входящий
а у вас получается какая то игра в биллиард с пакетами
с внутренней сети идет пакет
проходит мимо очереди на входящем интерефейсе(тоесть внутренем)
и идет на исходящий(внешний)
на внешнем он помечается, и ожидает входящего пакета через внешний интерфейс
при входящем пакете, очередь уже начинает срабатывает и задерживается
задержавшись она попадает на внутренний интерфейс
и срабатывает ЕЩЕ РАЗ
дальнейший смысл понятен?
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 10:31:17
Гость
ставил на очереди red rio ecn , оказывает мало влияния
http://www.openbsd.org/faq/pf/queueing.html
можно еще попробовать borrow
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 11:33:17
Гость
mainbrain писал(а):как видно из pftop, пакеты из очередей default действительно дропаются , а из игровых очередей ни одного не дропнулось ни разу
так у вас игровые очереди в самом высшем приоритете
из них и не должно дропатся
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 17:33:40
mainbrain
вот.. оставил очередь только на одном интерфейсе
Код: Выделить всё
ext_if = "vr0" # external interface
int_if = "rl0" # internal interface
#game_net = " { 195.12.0.0/16 } "
game_port = "{6112 , 4000 , 5795, 3724, 1513, 6113 , 6114, 6115, 6116, 6117, 6118, 6119 ,1119 , 1513, 1514, 8688, 7456, 6200, 8080}"
ip_1="10.75.0.8"
ip_2="10.75.0.2"
ip_3="10.75.0.3"
ip_4="10.75.0.9"
lan="10.75.0.0/24"
ext_ip="xx.xx.xx.xx"
int_ip="10.75.0.1"
set optimization aggressive
scrub in on $ext_if all fragment reassemble min-ttl 20 max-mss 1440
scrub in on $ext_if all no-df
scrub on $ext_if all reassemble tcp
altq on $ext_if priq bandwidth 2800Kb queue {gameport def}
queue gameport priority 15 priq
queue def priority 0 priq (default ,red)
#rdr pass on $ext_if proto {tcp udp} from any to $ext_if port 24978 -> 10.75.0.2 port 24978
## NAT
nat on $ext_if from $int_if:network to any -> ($ext_if)
rdr pass on $ext_if proto {tcp} from any to $ext_ip port 6112 -> 10.75.0.12 port 6112
block in log on $ext_if
antispoof log quick for { lo0, $int_if, $ext_if }
pass out quick on $ext_if proto tcp from $ext_ip to any port $game_port queue gameport
pass out quick on $ext_if proto udp from $ext_ip to any port $game_port queue gameport
pass out quick on $ext_if proto tcp from $ext_ip port $game_port to any queue gameport
pass out quick on $ext_if proto udp from $ext_ip port $game_port to any queue gameport
pass out quick on $ext_if inet proto icmp from $ext_ip to any icmp-type echoreq queue gameport
pass out quick on $ext_if inet proto icmp from $ext_ip to any icmp-type echorep queue gameport
pass out quick on $ext_if inet proto icmp from $ext_ip to any icmp-type unreach queue gameport
результат весьма печальный
Код: Выделить всё
Обмен пакетами с ya.ru [87.250.251.3] по 32 байт:
Ответ от 87.250.251.3: число байт=32 время=22мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=23мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=21мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=75мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=167мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=173мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=163мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=184мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=164мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=146мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=191мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=162мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=174мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=188мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=170мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=171мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=186мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=180мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=183мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=147мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=188мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=172мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=211мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=194мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=183мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=248мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=270мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=288мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=267мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=270мс TTL=53
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 17:39:21
Гость
давайте немного сначала?
я перечитал документацию
и с двумя очередями и на входящем и на исходящем интерфейсе, тоже можно строить
здесь вопрос в первоначально задачи
можете ее озвучить?
и еще
попробуйте к pass icmp правилам добавить keep-state
и включать выключать scrub
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 17:46:25
mainbrain
здесь вопрос в первоначально задачи
можете ее озвучить?
altq у меня работает, снижая пинг в играх с 1000 до примерно 25-60 при 100% (постоянной) загрузке канала
НО!!!
altq медленно реагирует на резкое увеличение трафика в очереди default и не успевает его вовремя ограничить
выглядит это примерно так
КОД: ВЫДЕЛИТЬ ВСЁ • РАЗВЕРНУТЬ
Ответ от 213.180.204.3: число байт=32 время=23мс TTL=54
Ответ от 213.180.204.3: число байт=32 время=21мс TTL=54 нет закачек
Ответ от 213.180.204.3: число байт=32 время=21мс TTL=54 нет закачек
Ответ от 213.180.204.3: число байт=32 время=121мс TTL=54 !!!!!!!!!!!!!!!!!!!старт закачки
Ответ от 213.180.204.3: число байт=32 время=165мс TTL=54 !!!!!!!!!!!!!!!!!!!!! лаги
Ответ от 213.180.204.3: число байт=32 время=60мс TTL=54 !!!!!!!!!!!!!!!!!!!!!!! лаги
Ответ от 213.180.204.3: число байт=32 время=35мс TTL=54 !!!!!!!совсем чуть чуть лагов
Ответ от 213.180.204.3: число байт=32 время=23мс TTL=54 закачка идет дальше
Ответ от 213.180.204.3: число байт=32 время=21мс TTL=54 закачка идет дальше
Ответ от 213.180.204.3: число байт=32 время=21мс TTL=54 закачка идет дальше
Ответ от 213.180.204.3: число байт=32 время=21мс TTL=54 закачка идет дальше
Ответ от 213.180.204.3: число байт=32 время=22мс TTL=54 закачка идет дальше
подскажите , что тут можно сделать?
попробуйте к pass icmp правилам добавить keep-state
а разве он не по умолчанию включен?
попробую руками вписать щас
и включать выключать scrub
выключу на всякий случай (кстати если scrub включить еще и на внутреннем то инет вообще не идет, только пинги )
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 17:48:20
Гость
и еще
у вас в gameport очереди
сразу большая каша
разделите ее
отдельно по каждой сущности
например для icmp
создайте другую очередь
и пускай у нее будет приоритет 14 к примеру
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 17:49:19
mainbrain
если я добавлю keep-state то ответы разве попадут в очередь?
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 17:51:31
Гость
mainbrain писал(а):если я добавлю keep-state то ответы разве попадут в очередь?
(( я линк потерял
где обсуждалась тоже одна из проблем с icmp
там такое было
в очереди и с keep-state
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 17:54:00
mainbrain
так и есть
gameport_in опустела
pfTop: Up Queue 1-4/4, View: queue, Cache: 10000 14:53:17
QUEUE BW SCH PRIO PKTS BYTES DROP_P DROP_B QLEN BORROW SUSPEN P/S B/S
gameport_out priq 15 343 25302 0 0 0
def_out priq 0 20597 1516729 0 0 0
gameport_in priq 15 0 0 0 0 0
def_in priq 0 34106 44767300 310 412194 0
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 17:56:48
Гость
под первоначальной задачей
я спрашивал о том как и что вы хотите что бы работало
а не саму проблемы что у вас пинг плохо реагирует
Re: как улучшить чувствительность altq к изменениям в очеред
Добавлено: 2011-04-07 18:02:19
mainbrain
Код: Выделить всё
ext_if = "vr0" # external interface
int_if = "rl0" # internal interface
#game_net = " { 195.12.0.0/16 } "
game_port = "{6112 , 4000 , 5795, 3724, 1513, 6113 , 6114, 6115, 6116, 6117, 6118, 6119 ,1119 , 1513, 1514, 8688, 7456, 6200, 8080}"
ip_1="10.75.0.8"
ip_2="10.75.0.2"
ip_3="10.75.0.3"
ip_4="10.75.0.9"
lan="10.75.0.0/24"
ext_ip="xx.xx.xx.xx"
int_ip="10.75.0.1"
set optimization aggressive
#scrub in on $ext_if all fragment reassemble min-ttl 20 max-mss 1440
#scrub in on $ext_if all no-df
#scrub on $ext_if all reassemble tcp
#altq on $ext_if hfsc bandwidth 1100Kb queue {gameport_out def_out}
#queue gameport_out bandwidth 30% priority 7 hfsc (red)
#queue def_out bandwidth 1% priority 0 hfsc (default , red , rio)
#altq on $int_if hfsc bandwidth 2800Kb queue {gameport_in def_in}
#queue gameport_in bandwidth 30% priority 7 hfsc (red)
#queue def_in bandwidth 1% priority 0 hfsc (default ,red , rio )
altq on $ext_if priq bandwidth 1100Kb queue {gameport_out def_out}
queue gameport_out priority 15 priq
queue def_out priority 0 priq (default ,red )
altq on $int_if priq bandwidth 2900Kb queue {gameport_in def_in}
queue gameport_in priority 15 priq
queue def_in priority 0 priq (default ,red )
#rdr pass on $ext_if proto {tcp udp} from any to $ext_if port 24978 -> 10.75.0.2 port 24978
## NAT
nat on $ext_if from $int_if:network to any -> ($ext_if)
rdr pass on $ext_if proto {tcp} from any to $ext_ip port 6112 -> 10.75.0.12 port 6112
block in log on $ext_if
antispoof log quick for { lo0, $int_if, $ext_if }
pass out quick on $int_if proto tcp from !$lan to $lan port $game_port queue gameport_in no state
pass out quick on $int_if proto udp from !$lan to $lan port $game_port queue gameport_in no state
pass out quick on $int_if proto tcp from !$lan port $game_port to $lan queue gameport_in no state
pass out quick on $int_if proto udp from !$lan port $game_port to $lan queue gameport_in no state
pass out quick on $int_if inet proto icmp from !$lan to $lan icmp-type echoreq queue gameport_in no state
pass out quick on $int_if inet proto icmp from !$lan to $lan icmp-type echorep queue gameport_in no state
pass out quick on $int_if inet proto icmp from !$lan to $lan icmp-type unreach queue gameport_in no state
pass out quick on $ext_if proto tcp from $ext_ip to any port $game_port queue gameport_out no state
pass out quick on $ext_if proto udp from $ext_ip to any port $game_port queue gameport_out no state
pass out quick on $ext_if proto tcp from $ext_ip port $game_port to any queue gameport_out no state
pass out quick on $ext_if proto udp from $ext_ip port $game_port to any queue gameport_out no state
pass out quick on $ext_if inet proto icmp from $ext_ip to any icmp-type echoreq queue gameport_out no state
pass out quick on $ext_if inet proto icmp from $ext_ip to any icmp-type echorep queue gameport_out no state
pass out quick on $ext_if inet proto icmp from $ext_ip to any icmp-type unreach queue gameport_out no state
вот такое работает так
Код: Выделить всё
Ответ от 87.250.251.3: число байт=32 время=69мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=137мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=28мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=89мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=47мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=67мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=52мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=52мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=70мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=26мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=125мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=25мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=78мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=61мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=99мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=44мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=100мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=41мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=97мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=46мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=49мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=52мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=60мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=57мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=59мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=27мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=100мс TTL=53
Ответ от 87.250.251.3: число байт=32 время=49мс TTL=53
то есть пинги не 300 конечно, но все равно паршивенько