|
|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Makc Surkiz 2:5020/400 31 May 2006 11:31:38 To : All Subject : ng_ipfw+ng_nat+ng_netflow проблемы с фрагментированными пакетами --------------------------------------------------------------------------------
Здравствуйте!
Использую сабжевую связку, еще совместно с ng_split
т.е. трафик попадает через ng_ipfw проходит через ng_netflow далее через
ng_split в ng_net и выходит через ng_ipfw...
ответ проходит по этой цепочке в обратном порядке, сплитом отправляется на
iface1 netflow и далее через out1 обратно в ipfw...
Конфиг:
ngctl_start() {
/usr/sbin/ngctl -f- <<-SEQ
mkpeer ipfw: netflow 1 iface0
name ipfw:1 netflow
mkpeer netflow: split out0 in
name netflow:out0 split1
mkpeer netflow: ksocket export inet/dgram/udp
msg netflow:export connect inet/127.0.0.1/4444
name netflow:export export
connect split1: netflow: out iface1
connect ipfw: netflow: 4 out1
mkpeer split1: nat mixed out
name split1:mixed nat1
connect ipfw: nat1: 2 in
msg nat1: setaliasaddr 192.168.66.48
msg netflow: setdlt { iface=0 dlt=12 }
msg netflow: setifindex { iface=0 index=1000 }
msg netflow: setdlt { iface=1 dlt=12 }
msg netflow: setifindex { iface=1 index=1001 }
msg netflow: settimeouts { inactive=15 active=900 }
SEQ
ipfw:
00010 netgraph 1 ip from 192.168.10.0/24 to any in via rl1
00020 netgraph 2 ip from any to 192.168.66.48 in via rl0
Проблема в следующем:
Клиент пускает пинг пакетом в 2000 байт, на интерфейсе клиента видно пакет и
его фрагмент
IP 192.168.10.2 > 192.168.66.41: ICMP echo request, id 25615, seq 33, length
1480
IP 192.168.10.2 > 192.168.66.41: icmp
IP 192.168.10.2 > 192.168.66.41: ICMP echo request, id 25615, seq 34, length
1480
IP 192.168.10.2 > 192.168.66.41: icmp
Затем пакет заворачивается в netgraph, считается, NAT`ится и выходит через
внешний интерфейс, через него же и приходит ответ:
IP 192.168.66.48 > 192.168.66.41: ICMP echo request, id 62735, seq 210,
length 1480
IP 192.168.66.48 > 192.168.66.41: icmp
IP 192.168.66.41 > 192.168.66.48: ICMP echo reply, id 62735, seq 210, length
1480
IP 192.168.66.41 > 192.168.66.48: icmp
После попадания в netgraph через правило 20 ipfw на локальном интерфейсе
такая картина:
IP 192.168.10.2 > 192.168.66.41: ICMP echo request, id 62735, seq 1259,
length 1480
IP 192.168.10.2 > 192.168.66.41: icmp
IP 192.168.66.41 > 192.168.10.2: icmp <<<<<<<<<<<<<!!!!!!!
Куда потерялся первая час пакета с ответом? Заблудилась в дебрях netgraph`a?
--
Best regards,
Surkiz Maksim
System Administrator
--- ifmail v.2.15dev5.3
* Origin: Demos online service (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/6577e5605298.html, оценка из 5, голосов 10
|