diff --git a/package/bind/Config.in b/package/bind/Config.in index a820670b4..910c61c2e 100644 --- a/package/bind/Config.in +++ b/package/bind/Config.in @@ -1,10 +1,25 @@ +menu "bind - DNS server implementation" + config BR2_PACKAGE_BIND - tristate "bind - popular dns server" - default m if CONFIG_DEVEL - select BR2_PACKAGE_LIBOPENSSL + bool "bind - popular dns server" + default y if CONFIG_DEVEL help DNS server implementation http://www.isc.org/ Depends: openssl + +config BR2_PACKAGE_BIND_SERVER + tristate "named - popular dns server" + default m if CONFIG_DEVEL + select BR2_PACKAGE_LIBOPENSSL + depends BR2_PACKAGE_BIND + +config BR2_PACKAGE_BIND_CLIENT + tristate "nsupdate - dynamic dns client" + default m if CONFIG_DEVEL + select BR2_PACKAGE_LIBOPENSSL + depends BR2_PACKAGE_BIND + +endmenu diff --git a/package/bind/Makefile b/package/bind/Makefile index d0bfe3433..497300ff5 100644 --- a/package/bind/Makefile +++ b/package/bind/Makefile @@ -13,10 +13,12 @@ PKG_CAT:=zcat PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install +PKG_INIT_LEVEL:=60 include $(TOPDIR)/package/rules.mk -$(eval $(call PKG_template,BIND,bind,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) +$(eval $(call PKG_template,BIND_SERVER,bind-server,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) +$(eval $(call PKG_template,BIND_CLIENT,bind-client,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) $(PKG_BUILD_DIR)/.configured: $(PKG_BUILD_DIR)/.prepared (cd $(PKG_BUILD_DIR); rm -rf config.{cache,status} ; \ @@ -36,7 +38,7 @@ $(PKG_BUILD_DIR)/.configured: $(PKG_BUILD_DIR)/.prepared --localstatedir=/var \ --mandir=/usr/share/man \ --sbindir=/usr/sbin \ - --sysconfdir=/etc \ + --sysconfdir=/etc/bind \ --without-openssl \ --without-ipv6 \ $(DISABLE_LARGEFILE) \ @@ -91,8 +93,17 @@ $(PKG_BUILD_DIR)/.built: $(PKG_BUILD_DIR)/.configured install touch $(PKG_BUILD_DIR)/.built -$(IPKG_BIND): - install -d -m0755 $(IDIR_BIND)/usr/sbin - cp -fpR $(PKG_INSTALL_DIR)/usr/sbin/named $(IDIR_BIND)/usr/sbin/ - $(RSTRIP) $(IDIR_BIND) - $(IPKG_BUILD) $(IDIR_BIND) $(PACKAGE_DIR) +$(IPKG_BIND_SERVER): + install -d -m0755 $(IDIR_BIND_SERVER)/usr/sbin + install -d -m0755 $(IDIR_BIND_SERVER)/etc/init.d + cp -fpR $(PKG_INSTALL_DIR)/usr/sbin/named $(IDIR_BIND_SERVER)/usr/sbin/ + cp -fpR files/bind $(IDIR_BIND_SERVER)/etc + cp -fpR files/named.init $(IDIR_BIND_SERVER)/etc/init.d/S$(PKG_INIT_LEVEL)named + $(RSTRIP) $(IDIR_BIND_SERVER) + $(IPKG_BUILD) $(IDIR_BIND_SERVER) $(PACKAGE_DIR) + +$(IPKG_BIND_CLIENT): + install -d -m0755 $(IDIR_BIND_CLIENT)/usr/bin + cp -fpR $(PKG_INSTALL_DIR)/usr/bin/nsupdate $(IDIR_BIND_CLIENT)/usr/bin/ + $(RSTRIP) $(IDIR_BIND_CLIENT) + $(IPKG_BUILD) $(IDIR_BIND_CLIENT) $(PACKAGE_DIR) diff --git a/package/bind/files/bind/db.0 b/package/bind/files/bind/db.0 new file mode 100644 index 000000000..e3aabdbee --- /dev/null +++ b/package/bind/files/bind/db.0 @@ -0,0 +1,12 @@ +; +; BIND reverse data file for broadcast zone +; +$TTL 604800 +@ IN SOA localhost. root.localhost. ( + 1 ; Serial + 604800 ; Refresh + 86400 ; Retry + 2419200 ; Expire + 604800 ) ; Negative Cache TTL +; +@ IN NS localhost. diff --git a/package/bind/files/bind/db.127 b/package/bind/files/bind/db.127 new file mode 100644 index 000000000..cd05bef14 --- /dev/null +++ b/package/bind/files/bind/db.127 @@ -0,0 +1,13 @@ +; +; BIND reverse data file for local loopback interface +; +$TTL 604800 +@ IN SOA localhost. root.localhost. ( + 1 ; Serial + 604800 ; Refresh + 86400 ; Retry + 2419200 ; Expire + 604800 ) ; Negative Cache TTL +; +@ IN NS localhost. +1.0.0 IN PTR localhost. diff --git a/package/bind/files/bind/db.255 b/package/bind/files/bind/db.255 new file mode 100644 index 000000000..e3aabdbee --- /dev/null +++ b/package/bind/files/bind/db.255 @@ -0,0 +1,12 @@ +; +; BIND reverse data file for broadcast zone +; +$TTL 604800 +@ IN SOA localhost. root.localhost. ( + 1 ; Serial + 604800 ; Refresh + 86400 ; Retry + 2419200 ; Expire + 604800 ) ; Negative Cache TTL +; +@ IN NS localhost. diff --git a/package/bind/files/bind/db.local b/package/bind/files/bind/db.local new file mode 100644 index 000000000..66b489235 --- /dev/null +++ b/package/bind/files/bind/db.local @@ -0,0 +1,13 @@ +; +; BIND data file for local loopback interface +; +$TTL 604800 +@ IN SOA localhost. root.localhost. ( + 1 ; Serial + 604800 ; Refresh + 86400 ; Retry + 2419200 ; Expire + 604800 ) ; Negative Cache TTL +; +@ IN NS localhost. +@ IN A 127.0.0.1 diff --git a/package/bind/files/bind/db.root b/package/bind/files/bind/db.root new file mode 100644 index 000000000..01c20f047 --- /dev/null +++ b/package/bind/files/bind/db.root @@ -0,0 +1,45 @@ + +; <<>> DiG 9.2.3 <<>> ns . @a.root-servers.net. +;; global options: printcmd +;; Got answer: +;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 18944 +;; flags: qr aa rd; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 13 + +;; QUESTION SECTION: +;. IN NS + +;; ANSWER SECTION: +. 518400 IN NS A.ROOT-SERVERS.NET. +. 518400 IN NS B.ROOT-SERVERS.NET. +. 518400 IN NS C.ROOT-SERVERS.NET. +. 518400 IN NS D.ROOT-SERVERS.NET. +. 518400 IN NS E.ROOT-SERVERS.NET. +. 518400 IN NS F.ROOT-SERVERS.NET. +. 518400 IN NS G.ROOT-SERVERS.NET. +. 518400 IN NS H.ROOT-SERVERS.NET. +. 518400 IN NS I.ROOT-SERVERS.NET. +. 518400 IN NS J.ROOT-SERVERS.NET. +. 518400 IN NS K.ROOT-SERVERS.NET. +. 518400 IN NS L.ROOT-SERVERS.NET. +. 518400 IN NS M.ROOT-SERVERS.NET. + +;; ADDITIONAL SECTION: +A.ROOT-SERVERS.NET. 3600000 IN A 198.41.0.4 +B.ROOT-SERVERS.NET. 3600000 IN A 192.228.79.201 +C.ROOT-SERVERS.NET. 3600000 IN A 192.33.4.12 +D.ROOT-SERVERS.NET. 3600000 IN A 128.8.10.90 +E.ROOT-SERVERS.NET. 3600000 IN A 192.203.230.10 +F.ROOT-SERVERS.NET. 3600000 IN A 192.5.5.241 +G.ROOT-SERVERS.NET. 3600000 IN A 192.112.36.4 +H.ROOT-SERVERS.NET. 3600000 IN A 128.63.2.53 +I.ROOT-SERVERS.NET. 3600000 IN A 192.36.148.17 +J.ROOT-SERVERS.NET. 3600000 IN A 192.58.128.30 +K.ROOT-SERVERS.NET. 3600000 IN A 193.0.14.129 +L.ROOT-SERVERS.NET. 3600000 IN A 198.32.64.12 +M.ROOT-SERVERS.NET. 3600000 IN A 202.12.27.33 + +;; Query time: 81 msec +;; SERVER: 198.41.0.4#53(a.root-servers.net.) +;; WHEN: Sun Feb 1 11:27:14 2004 +;; MSG SIZE rcvd: 436 + diff --git a/package/bind/files/bind/named.conf.example b/package/bind/files/bind/named.conf.example new file mode 100644 index 000000000..162454955 --- /dev/null +++ b/package/bind/files/bind/named.conf.example @@ -0,0 +1,45 @@ +// This is the primary configuration file for the BIND DNS server named. + +options { + directory "/tmp"; + + // If your ISP provided one or more IP addresses for stable + // nameservers, you probably want to use them as forwarders. + // Uncomment the following block, and insert the addresses replacing + // the all-0's placeholder. + + // forwarders { + // 0.0.0.0; + // }; + + auth-nxdomain no; # conform to RFC1035 +}; + +// prime the server with knowledge of the root servers +zone "." { + type hint; + file "/etc/bind/db.root"; +}; + +// be authoritative for the localhost forward and reverse zones, and for +// broadcast zones as per RFC 1912 + +zone "localhost" { + type master; + file "/etc/bind/db.local"; +}; + +zone "127.in-addr.arpa" { + type master; + file "/etc/bind/db.127"; +}; + +zone "0.in-addr.arpa" { + type master; + file "/etc/bind/db.0"; +}; + +zone "255.in-addr.arpa" { + type master; + file "/etc/bind/db.255"; +}; diff --git a/package/bind/files/named.init b/package/bind/files/named.init new file mode 100755 index 000000000..97860b3b2 --- /dev/null +++ b/package/bind/files/named.init @@ -0,0 +1,5 @@ +#!/bin/sh + +if [ -f /etc/bind/named.conf ]; then + named -c /etc/bind/named.conf +fi diff --git a/package/bind/ipkg/bind-client.control b/package/bind/ipkg/bind-client.control new file mode 100644 index 000000000..9d74be766 --- /dev/null +++ b/package/bind/ipkg/bind-client.control @@ -0,0 +1,7 @@ +Package: bind-client +Priority: optional +Section: net +Maintainer: OpenWrt Developer +Source: buildroot internal +Description: dynamic dns client +Depends: libopenssl diff --git a/package/bind/ipkg/bind-server.conffiles b/package/bind/ipkg/bind-server.conffiles new file mode 100644 index 000000000..c4cfe37d5 --- /dev/null +++ b/package/bind/ipkg/bind-server.conffiles @@ -0,0 +1,6 @@ +/etc/bind/named.conf.example +/etc/bind/db.0 +/etc/bind/db.127 +/etc/bind/db.255 +/etc/bind/db.local +/etc/bind/db.root diff --git a/package/bind/ipkg/bind.control b/package/bind/ipkg/bind-server.control similarity index 53% rename from package/bind/ipkg/bind.control rename to package/bind/ipkg/bind-server.control index 89daea59b..68a4293c5 100644 --- a/package/bind/ipkg/bind.control +++ b/package/bind/ipkg/bind-server.control @@ -1,7 +1,8 @@ -Package: bind +Package: bind-server Priority: optional Section: net -Maintainer: Waldemar Brodkorb +Maintainer: OpenWrt Developer Source: buildroot internal Description: popular dns server Depends: libopenssl +Conflicts: dnsmasq