Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 1 Dec 2015 17:27:36 +0100 (CET)
From:      elof2@sentor.se
To:        Mark Felder <feld@FreeBSD.org>
Cc:        wishmaster <artemrts@ukr.net>, freebsd-net <freebsd-net@freebsd.org>
Subject:   Re: IPFW blocked my IPv6 NTP traffic
Message-ID:  <alpine.BSF.2.00.1512011702240.54839@farmermaggot.shire.sentor.se>
In-Reply-To: <1448982333.1269981.454734633.11BA4DB2@webmail.messagingengine.com>
References:  <1448920706.962818.454005905.61CF9154@webmail.messagingengine.com> <1448956697.854911427.15is5btc@frv34.fwdcdn.com> <1448982333.1269981.454734633.11BA4DB2@webmail.messagingengine.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 1 Dec 2015, Mark Felder wrote:

>
>
> On Tue, Dec 1, 2015, at 02:02, wishmaster wrote:
>>
>> Hi, Mark.
>>
>>
>>> I'm hoping someone can explain what happened here and this isn't a bug,
>>> but if it is a bug I'll gladly open a PR.
>>>
>>> I noticed in my ipfw logs that I was getting a log of "DENY" entries for
>>> an NTP server
>>>
>>> Nov 30 13:35:16 gw kernel: ipfw: 4540 Deny UDP
>>> [2604:a880:800:10::bc:c004]:123 [2001:470:1f11:1e8::2]:58285 in via gif0

Three long-shots:

1)
I see that you use a gif interface. That makes me wonder:
Do the 'keep-state' function in 'ipfw' work as bad as it does in 'pf'?

In pf, 'keep state" doesn't keep state between software network 
interfaces and real network interfaces. So if I allow something in via 
tun0 (a software OpenVPN NIC), with keep state, the response is *not* 
automatically (via the state table) allowed back in on the ethernet NIC it 
was sent out. So for all my VPN-rules, I have to make two of them like 
this:

Pf example:
pass in  quick on tun0 inet proto tcp from <trusted_networks> to <customer_nets> port 22 keep state label "VpnIN - SSH"
pass out quick on em1  inet proto tcp from <trusted_networks> to <customer_nets> port 22 keep state label "DmzOUT - SSH"



2)
Is this hapening over and over, or was it just a one time thing?
If the latter, could it be that you flushed your firewall state table 
just after a cron job ran 'ntpdate 2604:a880:800:10::bc:c004', so the 
query got out but immediately after the state table was emptied and 
hence the response got blocked?



3)
If 2001:470:1f11:1e8::2 is not the ipfw node itself, but some node behind 
it, could the ntp query to 2604:a880:800:10::bc:c004 have taken a 
different path? I.e. the ipfw node doesn't see the query, but the response 
packet is routed to it, so it gets blocked.

/Elof



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?alpine.BSF.2.00.1512011702240.54839>