Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 24 Nov 2013 01:05:58 +0400
From:      Victor Gamov <vit@euro-comm.net>
To:        freebsd-net@freebsd.org
Subject:   Netgraph ng_patch and ng_input: where to find packets?
Message-ID:  <ED66CBAA-575E-4823-9AEE-4A44FEF6AB01@euro-comm.net>

next in thread | raw e-mail | index | archive | help
Hi All

I want to get 2 or 3 copies of input packet at my system to resend it to =
new destinations.  So I prepare following configuration:

# ipfw add 10000 ngtee 100 udp from any to 239.0.0.19 dst-port 1234 in =
via vlan999

# ngctl mkpeer ipfw: hub 100 hub-in
# ngctl name ipfw:100 hub100

# ngctl mkpeer hub100: patch hub100-out1 in
# ngctl name hub100:hub100-out1 patch100
# ngctl msg patch100: setconfig '{ count=3D1 csum_flags=3D1 ops=3D[ { =
value=3D0xc0a8e680 offset=3D16 length=3D4 mode=3D1 } ] }'

Now when I connect to patch:out as=20
# nghook -a patch100: out

then I see packets with new IP:

0000:  45 00 05 40 00 00 40 00 ff 11 b9 27 c0 a8 0d 12
0010:  c0 a8 e6 80 04 dc 04 dc 05 2c 00 00 47 4c ef 1a

Now I want to put this packets back into IP processing to send it to new =
destination 192.168.230.128 (0xc0a8e680):

# ngctl mkpeer patch100: ip_input out new100_to_dst_1

But packets not shown on outgoing interface:

# ifconfig vlan333
vlan333: flags=3D8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 =
mtu 1500
	options=3D103<RXCSUM,TXCSUM,TSO4>
	ether 00:1b:21:5b:7e:e9
	inet 192.168.230.9 netmask 0xffffff00 broadcast 192.168.230.255

# arp 192.168.230.128
? (192.168.230.128) at 62:99:4c:3b:22:fc on vlan333 expires in 1190 =
seconds [vlan]


Can somebody explain me where I was wrong?

Thanks!

--
CU,
Victor Gamov







Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?ED66CBAA-575E-4823-9AEE-4A44FEF6AB01>