Re: Planning to switch VyOS from ISC dhclient to dhcpcd
Roy Marples
Sun Jan 31 09:47:09 2016
On 2016-01-31 04:04, Nick Williams wrote:
I'll pick that out :)
What is an important bug?
I guess what I was asking here is, “is there a version before which
DHCPv6 and/or prefix delegation just don’t work at all because of
some major bug that was fixed?” I get that we need to perform
thorough testing, etc.
OK, here's a little bug for you :)
There appears to be an issue with assigning delegated prefixes to
interfaces with a prefix length of 64 or greater right now.
This issue appears to have always been there and I'm working on a fix in
my spare time.
As no-one has noticed it recently (although it could also be Peng's
issue) I assume it's not urgent.
However, it c
There is also an issue where the config is not working for multiple
interfaces to delegate to.
This issue appears to have been recently introduced, but I can't say
from which version.
But, since we’re looking at having to package
dhcpcd ourselves for our version of Debian, it would save me time if I
knew that there’s no point in trying anything before version X.
This is why I provide a list of important changes with each release to
this mailing list.
You can read the archives here:
http://roy.marples.name/archives/dhcpcd-discuss/
That aside, I have a couple more questions:
1) What’s the point of config options “ipv4” / “ipv6” in
comparison to / conjunction with “dhcp” / “dhcp6” (slash their
“noipv4,” etc. companions)? Why would you use just “ipv4” or
just “dhcp” or both “ipv4” and “dhcp”? I read this [1]
documentation as well as I could, but that just stuck out to me as not
making sense.
IPv4 also always static IP assignment, ARP ing profiles and IPv4LL
support - not just dhcp.
IPv6 also has RS/RA - not just dhcpv6.
2) What will “allowinterfaces" do if you pass to it a non-existent
interface? For example, if I set the option “allowinterfaces plc0”
(short for placeholder 0), will it, as I hope, keep dhcpcd from
touching any existing interfaces, or will it error out because plc0
doesn’t exist?
Here's the text:
allowinterfaces pattern
When discovering interfaces, the interface name must match pattern
which is a space or comma separated list of patterns passed to
fnmatch(3). If the same interface is matched in denyinterfaces then it
is still denied.
Now, I think this is quite clear, but let me break it down into smaller
chunks:
1 Interfaces are discovered by probing the kernel.
2 If allowinterfaces is set, each interface discovered must match the
pattern passed to fnmatch(3)
3 Because fnmatch(3) states you are allowed to use wildcards it follows
that an actual pattern doesn't exit but what it can match will exist
4 Therefore, if allowinterfaces has a pattern that does not exist, it's
not an error.
What about if I set the option “allowinterfaces”
without anything after it?
You can an error.
If pattern was optional it would display as [ pattern ], following the
same format as every other man page out there.
Roy
Archive administrator: postmaster@marples.name