[FUG-BR] divert(4)
Otacílio de Araújo Ramos Neto
otacilio.neto em ee.ufcg.edu.br
Domingo Agosto 9 00:53:23 BRT 2009
Caros.
Estou com o seguinte problema. Estou tentando capturar pacotes com a
seguinte regra:
00500 divert 2508 tcp from any to any
Mais especificamente, com o grupo de regras:
squitch# ipfw list
00100 allow ip from any to any via lo0
00200 deny ip from any to 127.0.0.0/8
00300 deny ip from 127.0.0.0/8 to any
00500 divert 2508 tcp from any to any
65000 allow ip from any to any
65535 deny ip from any to any
Configurei as minhas interfaces de rede assim:
squitch# ifconfig
msk0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=11a<TXCSUM,VLAN_MTU,VLAN_HWTAGGING,TSO4>
ether 00:03:0d:66:9d:e7
media: Ethernet autoselect (none)
status: no carrier
wpi0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
ether 00:1b:77:d4:84:72
inet 192.168.1.108 netmask 0xffffff00 broadcast 192.168.1.255
media: IEEE 802.11 Wireless Ethernet autoselect (DS/11Mbps)
status: associated
ssid casafrente channel 11 (2462 Mhz 11g) bssid 00:1e:e5:33:c2:cb
authmode WPA2/802.11i privacy ON deftxkey UNDEF AES-CCM 2:128-bit
txpower 50 bmiss 7 scanvalid 60 protmode CTS roaming MANUAL
fwip0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
lladdr 0.3.d.49.40.0.f8.18.a.2.ff.fe.0.0.0.0
lo0: flags=8149<UP,LOOPBACK,RUNNING,PROMISC,MULTICAST> metric 0 mtu 16384
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x4
inet6 ::1 prefixlen 128
inet 127.0.0.1 netmask 0xff000000
inet 192.168.0.2 netmask 0xffffff00
Só que eu estou com quase certeza que os pacotes vindo de 192.168.0.2 estão
passando direto para 192.168.1.108 sem serem "diverted" para a porta 2508.
Do manual de ipfw encontrei que:
^ to upper layers V
| |
+----------->-----------+
^ V
[ip(6)_input] [ip(6)_output]
net.inet(6).ip(6).fw.enable=1
| |
^ V
[ether_demux] [ether_output_frame] net.link.ether.ipfw=1
| |
+-->--[bdg_forward]-->--+
net.link.bridge.ipfw=1
^ V
| to devices |
Esse traço no topo da figura esta me dando uma suspeita que a seguinte
página de manual aumenta mais ainda.
Do man 4 divert encontrei que:
Packets are diverted either as they are ``incoming'' or ``outgoing.''
Incoming packets are diverted after reception on an IP interface,
whereas
outgoing packets are diverted before next hop forwarding.
Alguém me confirme por favor que os pacotes só passam pela regra divert se
eles não estiverem endereçados a nenhum IP do host onde a regra está
rodando.
Obrigado!
Mais detalhes sobre a lista de discussão freebsd