A number of applications are IPv6 specific while others are generic but with IPv6 support enabled. below an overview of the IPv6 (enabled) applications in Bering-uClibc is given. The following sections will go into the IPv6 specifics of these applications.
Description | ping6 and netstat from BusyBox |
Source | www.busybox.net |
Version | 1.0 |
Package | initrd.lrp |
Description | Router advertisement daemon |
Source | v6web.litech.org/radvd |
Version | 0.7.2 |
Package | radvd.lrp |
Check the section on IPv6 configuration for more info on how to configure the routing advertisement daemon.
Description | Netfilter application for IPv6 |
Source | www.netfilter.org |
Version | 1.2.8 |
Package | ip6table.lrp |
No explicit configuration is needed for ip6tables within Bering-uClibc since the complete netfilter configuration is done by 6wall.
Description | IPv6 firewall scripts for ip6tables |
Source | LEAF CVS |
Version | 1.0.2 |
Package | 6wall.lrp |
Check the section on IPv6 configuration for more info on how to configure the routing advertisement daemon.
The known limitations and problems with this application are listed below. If you happen to have a solution for these issues, please let us know.
See section "Limitations" in the 6wall documentation.
Description | Dns cache and dns server applications from Tinydns |
Source | tinydns.org and the IPv6 patch from www.fefe.de/dns/ |
Version | 1.0.5 |
Package | dnscache.lrp and
tinydns.lrp |
The current version of the IPv6 patch adds support for AAAA records (those are the DNS records that store IPv6 numbers) and IPv6 addresses in PTR records. It also supports automatic internal lookup of some reserved IPv6 addresses (like "::1").
IPv6 related configuration is only applicable for
tinydns. The AAAA records are configured in the
private DNS server data file
(/etc/tinydns-private/root/data
) and/or the
public DNS server data file
(/etc/tinydns-public/root/data
). See below for a
sample configuration of the private DNS server data file with IPv6
addresses. The keyword "6" is used to define the
IPv6 AAAA and PTR records. If you don't want the PTR record but only
the AAAA record, use the keyword "3"
instead.
.local.net::ns.local.net .1.168.192.in-addr.arpa::ns.local.net +ns.local.net:127.0.0.1 =hosta.local.net:192.168.1.1 =hostb.local.net:192.168.1.2 =firewall.local.net:192.168.1.254 6hosta.local.net:20010888180f157f0000000000000001 6hostb.local.net:20010888180f157f0000000000000002 6firewall.local.net:20010888180f157f0000000000000254 6hostasitelocal.local.net:fec0000000000000020024fffec06936 6hostbsitelocal.local.net:fec00000000000000250bffffe124c5b 6firewallsitelocal.local.net:fec0000000000000024095fffe161d42
Notice that the IPv6 address needs to be fully specified, no abbreviation with colons ("::") is allowed.
The known limitations and problems with these applications are listed below. If you happen to have a solution for these issues, please let us know.
IPv6 transport support is experimental. The
dnscache and tinydns daemons
are bound to IPv4-mapped IPv6 addresses, e.g.
::ffff:192.168.1.254
Description | USAGI inetd daemon |
Source | Prepatched source tarball by the USAGI project |
Version | 0.17 + USAGI IPv6 patches |
Package | root.lrp |
Use the keywords tcp6 and
udp6 in /etc/inetd.conf
to let
inetd listen on IPv6 sockets. For example, if you want to weblet to be
accessible via IPv6 you should configure
/etc/inetd.conf
as follows:
(...) www stream tcp6 nowait sh-httpd /usr/sbin/tcpd /usr/sbin/sh-httpd (...)
The known limitations and problems with this application are listed below. If you happen to have a solution for these issues, please let us know.
It is not possible to let inetd listen to the same
portnumber for IPv4 and IPv6 sockets. Tests with the
tcp46 keyword have failed. Also putting two
configuration lines in /etc/inetd.conf
, one
with the tcp(4) and one with the
tcp6 keyword, has not given the desired
result.
Description | PPP daemon |
Source | www.samba.org/ppp/ |
Version | 2.4.1 |
Package | ppp.lrp |
Description | SNMP daemon from Net-SNMP |
Source | www.net-snmp.org |
Version | 5.0.8 |
Package | netsnmpd.lrp |
This section only describes how to use the IPv6 features of netsnmpd. For general configuration issues refer to the documentation on the net-snmp site.
Default snmpd listens only to IPv4 sockets. Extra parameters can
be used on startup of the daemon to make it listen to both IPv4 and
IPv6 sockets. One of the current shortcommings is that the IPv4 and
IPv6 port numbers on which the daemon listens may not be the same. For
example to let snmpd listen on port 161 for IPv4 and on port 6161 for
IPv6 edit /etc/init.d/snmpd
as follows.
(...) # Set cli options here OPTIONS="udp:161,udp6:6161" OPTIONS=${OPTIONS:+-- $OPTIONS} (...)
Restart the daemon with the command /etc/init.d/snmpd restart. You can check if the snmpd daemon is really listening to both sockets with the following command:
# netstat -na Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State (...) udp 0 0 0.0.0.0:161 0.0.0.0:* udp 0 0 :::6161 :::* (...)
The known limitations and problems with this application are listed below. If you happen to have a solution for these issues, please let us know.
You can get the daemon to listen to IPv4 sockets as well as IPv6 sockets, but not on the same UDP ports.
Not the full IPv6 MIB can be retrieved via commands like snmpwalk, only the following object instances are returned:
.iso.3.6.1.2.1.55.1.1.0 = 1 .iso.3.6.1.2.1.55.1.2.0 = 64 .iso.3.6.1.2.1.55.1.3.0 = Gauge32: 3 .iso.3.6.1.2.1.55.1.5.1.2.1 = "lo" .iso.3.6.1.2.1.55.1.5.1.2.3 = "eth0" .iso.3.6.1.2.1.55.1.5.1.2.4 = "eth1" .iso.3.6.1.2.1.55.1.5.1.3.1 = OID: .ccitt.0 .iso.3.6.1.2.1.55.1.5.1.3.3 = OID: .ccitt.0 .iso.3.6.1.2.1.55.1.5.1.3.4 = OID: .ccitt.0 .iso.3.6.1.2.1.55.1.5.1.4.1 = Gauge32: 16436 .iso.3.6.1.2.1.55.1.5.1.4.3 = Gauge32: 1500 .iso.3.6.1.2.1.55.1.5.1.4.4 = Gauge32: 1500 .iso.3.6.1.2.1.55.1.5.1.8.1 = "" .iso.3.6.1.2.1.55.1.5.1.8.3 = Hex: 00 40 95 1A 14 F4 .iso.3.6.1.2.1.55.1.5.1.8.4 = Hex: 00 40 95 1A 14 70 .iso.3.6.1.2.1.55.1.5.1.9.1 = 1 .iso.3.6.1.2.1.55.1.5.1.9.3 = 1 .iso.3.6.1.2.1.55.1.5.1.9.4 = 1 .iso.3.6.1.2.1.55.1.5.1.10.1 = 1 .iso.3.6.1.2.1.55.1.5.1.10.3 = 1 .iso.3.6.1.2.1.55.1.5.1.10.4 = 1
Description | Secure shell daemon |
Source | www.openssh.org |
Version | 3.7.1p1 |
Packages | sshd.lrp ,
libm.lrp ,
libcrpto.lrp |
This section only describes how to use the IPv6 features of sshd. For general configuration issues refer to the documentation on the OpenSSH site.
Sshd is compiled with TCP-wrappers support. Thus means that the
hosts.allow
and hosts.deny
files are used for acces control purposes. If you want to access the
ssh daemon with an IPv6 enabled client such as PuTTY, then you need to
specifiy the IPv6 address for the single client or the prefix for more
clients in the same subnet.
The following is an example how to modify
/etc/hosts.allow
to allow all clients with a
site-local address:
(...) ALL: [fec0::/64] (...)