Dnsmasq is een lichtgewichte en betrekkelijk makkelijk in te stellen dns- en dhcp-server die zich richt op 'kleine' omgevingen. Ondersteuning voor statische en dynamische dhcp-leases is aanwezig, net zoals bootp en tftp waarmee diskloze machines via het netwerk kunnen opstarten. Voor meer informatie verwijzen we jullie door naar deze pagina. De ontwikkelaar heeft een nieuwe versie van Dnsmasq uitgebracht, die 2.47 als het versienummer heeft gekregen en met de volgende lijst van aanpassingen sinds de vorige vermelding in de Meuktracker wordt geleverd:
- Updated French translation. Thanks to Gildas Le Nadan.
- Fixed interface enumeration code to work on NetBSD 5.0. Thanks to Roy Marples for the patch.
- Updated config.h to use the same location for the lease file on NetBSD as the other *BSD variants. Also allow LEASEFILE and CONFFILE symbols to be overriden in CFLAGS.
- Handle duplicate address detection on IPv6 more intelligently. In IPv6, an interface can have an address which is not usable, because it is still undergoing DAD (such addresses are marked "tentative"). Attempting to bind to an address in this state returns an error, EADDRNOTAVAIL. Previously, on getting such an error, dnsmasq would silently abandon the address, and never listen on it. Now, it retries once per second for 20 seconds before generating a fatal error. 20 seconds should be long enough for any DAD process to complete, but can be adjusted in src/config.h if necessary. Thanks to Martin Krafft for the bug report.
- Add DBus introspection. Patch from Jeremy Laine.
- Update Dbus configuration file. Patch from Colin Walters.
- Support arbitrarily encapsulated DHCP options, suggestion and initial patch from Samium Gromoff. This is useful for (eg) gPXE, which expect all its private options to be encapsulated inside a single option 175. So, eg,
dhcp-option = encap:175, 190, "iscsi-client0"
dhcp-option = encap:175, 191, "iscsi-client0-secret"
will provide iSCSI parameters to gPXE.
- Enhance --dhcp-match to allow testing of the contents of a client-sent option, as well as its presence. This application in mind for this is RFC 4578 client-architecture specifiers, but it's generally useful. Joey Korkames suggested the enhancement.
- Move from using the IP_XMIT_IF ioctl to IP_BOUND_IF on OpenSolaris. Thanks to Bastian Machek for the heads-up.
- No longer complain about blank lines in /etc/ethers. Thanks to Jon Nelson for the patch.
- Fix binding of servers to physical devices, eg --server=/domain/188.8.131.52@eth0 which was broken from 2.43 onwards unless --query-port=0 set. Thanks to Peter Naulls for the bug report.
- Reply to DHCPINFORM requests even when the supplied ciaddr doesn't fall in any dhcp-range. In this case it's not possible to supply a complete configuration, but individually-configured options (eg PAC) may be useful.
- Allow the source address of an alias to be a range: --alias=192.168.0.0,10.0.0.0,255.255.255.0 maps the whole subnet 192.168.0.0->192.168.0.255 to 10.0.0.0->10.0.0.255, as before. --alias=192.168.0.10-192.168.0.40,10.0.0.0,255.255.255.0 maps only the 192.168.0.10->192.168.0.40 region. Thanks to Ib Uhrskov for the suggestion.
- Don't dynamically allocate DHCP addresses which may break Windows. Addresses which end in .255 or .0 are broken in Windows even when using supernetting. --dhcp-range=192.168.0.1,192.168.1.254,255,255,254.0 means 192.168.0.255 is a valid IP address, but not for Windows. See Microsoft KB281579. We therefore no longer allocate these addresses to avoid hard-to-diagnose problems.
- Update Polish translation. Thanks to Jan Psota.
- Delete the PID-file when dnsmasq shuts down. Note that by this time, dnsmasq is normally not running as root, so this will fail if the PID-file is stored in a root-owned directory; such failure is silently ignored. To take advantage of this feature, the PID-file must be stored in a directory owned and write-able by the user running dnsmasq.
- Allow --bootp-dynamic to take a netid tag, so that it may be selectively enabled. Thanks to Olaf Westrik for the suggestion.
- Remove ISC-leasefile reading code. This has been deprecated for a long time, and last time I removed it, it ended up going back by request of one user. This time, it's gone for good; otherwise it would need to be re-worked to support multiple domains (see below).
- Support DHCP clients in multiple DNS domains. This is a long-standing request. Clients are assigned to a domain based in their IP address.
- Add --dhcp-fqdn flag, which changes behaviour if DNS names assigned to DHCP clients. When this is set, there must be a domain associated with each client, and only fully-qualified domain names are added to the DNS. The advantage is that the only the FQDN needs to be unique, so that two or more DHCP clients can share a hostname, as long as they are in different domains.
- Set environment variable DNSMASQ_DOMAIN when invoking lease-change script. This may be useful information to have now that it's variable.
- Tighten up data-checking code for DNS packet handling. Thanks to Steve Dodd who found certain illegal packets which could crash dnsmasq. No memory overwrite was possible, so this is not a security issue beyond the DoS potential.
- Update example config dhcp option 47, the previous suggestion generated an illegal, zero-length, option. Thanks to Matthias Andree for finding this.
- Rewrite hosts-file reading code to remove the limit of 1024 characters per line. John C Meuser found this.
- Create a net-id tag with the name of the interface on which the DHCP request was received.
- Fixed minor memory leak in DBus code, thanks to Jeremy Laine for the patch.
- Emit DBus signals as the DHCP lease database changes. Thanks to Jeremy Laine for the patch.
- Allow for more that one MAC address in a dhcp-host line. This configuration tells dnsmasq that it's OK to abandon a DHCP lease of the fixed address to one MAC address, if another MAC address in the dhcp-host statement asks for an address. This is useful to give a fixed address to a host which has two network interfaces (say, a laptop with wired and wireless interfaces.) It's very important to ensure that only one interface at a time is up, since dnsmasq abandons the first lease and re-uses the address before the leased time has elapsed. John Gray suggested this.
- Tweak the response to a DHCP request packet with a wrong server-id when --dhcp-authoritative is set; dnsmasq now returns a DHCPNAK, rather than silently ignoring the packet. Thanks to Chris Marget for spotting this improvement.
- Add --cname option. This provides a limited alias function, usable for DHCP names. Thanks to AJ Weber for suggestions on this.
- Updated contrib/webmin with latest version from Neil Fisher.
- Updated Polish translation. Thanks to Jan Psota.
- Correct the text names for DHCP options 64 and 65 to be "nis+-domain" and "nis+-servers".
- Updated Spanish translation. Thanks to Chris Chatham.
- Force re-reading of /etc/resolv.conf when an "interface up" event occurs.