On 29 Mar 2014 at 22:10, Stéphane Guedon wrote:

> Hello
> 
> I am currently trying to run two nameserver on the same Openbsd 
> server.
> 
> The first one is an autoritative (let's say bind or nsd, no one
> cares).
> the second will be dnsmasq.
> 
> You guess the objective of the construction : give local answers from
> dhcp leases to local requests, and give autoritatives for the internet
> requests.
> 
> That's for the presentation.
> 
> I can run dnsmasq on a different port, but how do I give my local
> hosts 
> the idea of interrogating a non standard dns port ?
> Then I though I could drive the traffic from my LAN to the port where
> dnsmasq is running on.
> 
> so here is pf conf (obviously expurged) :
> 
> #######
> 
> table <localnet> { local addresses }
> 
> # common
> pass in log on egress proto { tcp, udp }      from any to re0 port domain
> 
> # local
> pass in quick log on re0 inet proto { udp,tcp }       from <localnet> 
> port domain rdr-to 127.0.0.1 port 5353

unless I'm severly mistaken (and someone will correct me), the rule as 
written will match only packets whose SOURCE port is domain ... you are 
missing a "to (self)" or "to any" in front of the port specification to 
achieve your objective.

> #pass in quick log on re0 proto { udp,tcp }           from <localnet> port 
> domain divert-packet port 5353
> 
> #######
> 
> I first tried to use the divert-packet rule (that way I don't have to
> care if the traffic is ipv6 or ipv4), then I tried to redirect using
> rdr-to 127... like most tutorials I found regarding rdr.
> 
> I move the local rules before or after the common one, place a quick
> on the common or removed it...
> 
> Nothing : the common rule is always the one that applies according to
> the logs.
> Can you tell me what I am doing wrong ?

Reply via email to