Ilya Evseev Опубликовано 28 августа, 2010 (изменено) · Жалоба Имеется FreeBSD (пробовал 7.1 и 8.1), ipfw + ngnetflow, gif- и vlan-интерфейсы к шлюзам других сетей. Динамических правил в ipfw нет (net.inet.ip.fw.dyn_count: 0) Проблема: правило "ipfw add 101 netgraph 101 ip from any to any" не пропускает пакеты на gif-интерфейсах. Первые пакеты в TCP-сессиях проскакивают, дальше происходит затык с ответами. От нагрузки не зависит. На vlan-интерфейсах всё нормально. Ответы на запросы непосредственно с удалённых шлюзов проходят нормально, проблема есть только при обращениях с клиентских машин, расположенных за ними. Если отключить файрволл через sysctl net.inet.ip.fw.enable и выполнить соединение с удалённого клиентского компьютера к локальному сайту, а потом опять включить файрволл, то все следующие соединения некоторое время будут проходить нормально. Если перед ipfw-правилом netgraph вставить "ipfw add 99 skipto 102 tcp from $site to any out" и выполнить соединение, а потом убрать правило, то следующие соединения некоторое время будут проходить нормально. # ngctl show netflow: Name: netflow Type: netflow ID: 00000006 Num hooks: 3 Local hook Peer name Peer type Peer ID Peer hook ---------- --------- --------- ------- --------- export <unnamed> ksocket 0000000c inet/dgram/udp out0 ipfw ipfw 00000001 100 iface0 ipfw ipfw 00000001 101 # ngctl show ipfw: Name: ipfw Type: ipfw ID: 00000001 Num hooks: 2 Local hook Peer name Peer type Peer ID Peer hook ---------- --------- --------- ------- --------- 100 netflow netflow 00000006 out0 101 netflow netflow 00000006 iface0 Создание ноды: ngctl mkpeer ipfw: netflow 101 iface0 ngctl name ipfw:101 netflow ngctl msg netflow: "setdlt { iface=0 dlt=12 }" ngctl connect ipfw: netflow: 100 out0 ngctl mkpeer netflow: ksocket export inet/dgram/udp ngctl msg netflow:export connect inet/10.20.30.40 sysctl.conf: net.link.ether.inet.log_arp_wrong_iface=0 net.inet.ip.dummynet.io_fast=1 net.inet.ip.fastforwarding=1 # пробовал 0 - не помогло. net.inet.ip.redirect=0 net.inet.ip.fw.one_pass=0 net.inet.ip.fw.dyn_buckets=2048 net.inet.ip.dummynet.hash_size=1024 net.inet.tcp.blackhole=2 net.inet.udp.blackhole=1 net.inet.ip.intr_queue_maxlen=400 Куда рыть? Изменено 28 августа, 2010 пользователем Ilya Evseev Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...