[Dnsmasq-discuss] Is updating dnsmasq.conf supposed to update dnsmasq.plist?

John Puffs johnnypuffs at gmail.com
Tue Aug 3 23:08:24 BST 2010


Thank you so much for that information Perette.. Very helpful!

Seems silly that certain options in the .plist file are not automatically
updated. I will file a bug report as this is not good.

One quick question that I think I know the answer to.. You said "Since
command-line options override the config file options in dnsmasq (as with
most other utilities), your config file is ignored in preference of the
.plist/command line option."

I understand that options that are listed in the .plist will override the
config file. But do the rest of the config file options still work
correctly?

I assume they do, as I said in my original post that it sees my alternate
hosts file, even though it is only listed in the config.

Thanks again,
JP



On Tue, Aug 3, 2010 at 2:49 PM, Perette Barella <perette at barella.org> wrote:

> The .plist file is a Mac-only thing.  As such, it is not part of the
> "standard" dnsmasq distribution, but something that MacPorts adds.
>
> For reference, the full contents of the file are:
> <?xml version='1.0' encoding='UTF-8'?>
> <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN"
> "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
> <plist version='1.0'>
>  <dict>
>    <key>Label</key>
>    <string>org.macports.dnsmasq</string>
>    <key>ProgramArguments</key>
>    <array>
>      <string>/opt/local/sbin/dnsmasq</string>
>      <string>-k</string>
>      <string>-r</string>
>      <string>/etc/resolv.conf</string>
>    </array>
>    <key>KeepAlive</key>
>    <dict>
>      <key>NetworkState</key>
>      <true/>
>    </dict>
>  </dict>
> </plist>
>
> This file is statically installed this way as part of the MacPorts dnsmasq
> package, and no, it isn't updated programatically.  This XML file is used by
> launchd(8) on OS X to know when and how to launch dnsmasq during boot.  (For
> other UNIX folks, launchd(8) is the replacement for init(8) and inetd(8)).
>  This is resulting in dnsmasq being invoked with a command line of:
>        /opt/local/sbin/dnsmasq/dnsmasq -k -r /etc/resolv.conf
> Since command-line options override the config file options in dnsmasq (as
> with most other utilities), your config file is ignored in preference of the
> .plist/command line option.  So it's MacPorts fault.  Why the MacPorts
> people decided that "-r /etc/resolv.conf" should be specified on the command
> line, I don't know, but it seems like a poor choice to me; you can just
> remove the lines corresponding to "-r" and "/etc/resolv.conf" and then it'll
> use your config file.  Maybe you should log a bug report with MacPorts.
>
> -k is a reasonable command-line option for operating under launchd, which
> doesn't want processes to fork/exec.  (It will by default try to spawn
> another instance of the process if/when it dies.)  Don't remove that.
>
> Peri
>
>
>
>
>
>
> On 2010年08月03日, at 17:14, John Puffs wrote:
>
> > I could NOT get it to work because my router constantly overwrites my
> resolv.conf file. So I set up dnsmasq.conf to read a separate file instead
> (resolv2.conf).  Still did not work. I finally went into the dnsmasq.plist
> file and saw that /etc/resolv.conf was listed. I changed that and everything
> was fine.
> >
> > I have since made other changes to dnsmasq.conf and do not see my
> dnsmasq.plist updating.
> >
> > Is updating dnsmasq.conf supposed to re-write options to dnsmasq.plist?
> >
> > Where does dnsmasq get it's options from; dnsmasq.conf, dnsmasq.plist or
> both??
> >
> > I have dnsmasq.conf set to read /etc/hosts as well as a separate hosts
> file I use for blocking around 16,000 sites. Apparently this is working fine
> as it does block the sites and doing a dig shows it is going to 127.0.0.1
> for any site. YET there is nothing in my plist to indicate that dnsmasq is
> supposed to read a separate hosts file. This makes me believe idnsmasq gets
> it's options from both dnsmasq.conf and dnsmasq.plist...
> >
> > So I guess I have 2 questions:
> >
> > 1. is updating dsnmasq.conf supposed to pass variables to dnsmasq.plist?
> If so I don't think mine is.. Why?
> > 2. What variables NEED to be in the .plist file as compared to the conf
> file?
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.thekelleys.org.uk/pipermail/dnsmasq-discuss/attachments/20100803/9b8ab105/attachment.htm 


More information about the Dnsmasq-discuss mailing list