Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 5 Jan 2021 09:43:14 -0500
From:      Mark Johnston <markj@freebsd.org>
To:        Vasily Postnicov <shamaz.mazum@gmail.com>
Cc:        freebsd-net@freebsd.org
Subject:   Re: DNS using Name Service Switch module and Casper
Message-ID:  <X/R7Ahz8sz5v%2BoFa@raichu>
In-Reply-To: <CADnZ6Bke=9%2B_pMc6rkbheNUWS-H6_X14%2Bf%2BWz5cfUCD=BTwk=g@mail.gmail.com>
References:  <CADnZ6Bke=9%2B_pMc6rkbheNUWS-H6_X14%2Bf%2BWz5cfUCD=BTwk=g@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Jan 05, 2021 at 10:02:37AM +0300, Vasily Postnicov wrote:
> Hello. I wrote a simple daemon called ZeroDNS which provides functionality
> similar to multicast DNS, namely it discovers other participating machines
> over the LAN and stores their hostname and IPv4 address pairs.
> 
> Here is a NSS module which allows the system to use information from that
> daemon:
> https://github.com/shamazmazum/nss-zero-dns
> 
> You need to modify /etc/nsswitch.conf, changing the line 'hosts: files dns'
> to 'hosts: files dns zerodns'.
> 
> It all works on FreeBSD 12.2-RELEASE, but sometimes not on 13.0-CURRENT.
> For example, ping(8) just blocks when trying to ping a host whose name is
> resolvable with ZeroDNS. Turns out that programs built with casper support
> (like ping(8) and some others) stop working with my NSS module (they just
> block trying to resolve the name).

Presumably it's the casper process (i.e., cap_dns) that uses your
module?  If the main ping process is blocked trying to resolve a name,
it's waiting for the cap_dns process - where exactly is it getting
stuck?

> Is there some kind of manual on how to write casper-compatible NSS modules?



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?X/R7Ahz8sz5v%2BoFa>