Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/usr.sbin/inetd clarify tcp4/tcp6 interaction.



details:   https://anonhg.NetBSD.org/src/rev/92ef528dcf81
branches:  trunk
changeset: 487892:92ef528dcf81
user:      itojun <itojun%NetBSD.org@localhost>
date:      Wed Jun 14 15:57:26 2000 +0000

description:
clarify tcp4/tcp6 interaction.

diffstat:

 usr.sbin/inetd/inetd.8 |  91 +++++++------------------------------------------
 1 files changed, 13 insertions(+), 78 deletions(-)

diffs (126 lines):

diff -r b879744e9771 -r 92ef528dcf81 usr.sbin/inetd/inetd.8
--- a/usr.sbin/inetd/inetd.8    Wed Jun 14 15:56:21 2000 +0000
+++ b/usr.sbin/inetd/inetd.8    Wed Jun 14 15:57:26 2000 +0000
@@ -1,4 +1,4 @@
-.\"    $NetBSD: inetd.8,v 1.27 2000/01/31 14:28:17 itojun Exp $
+.\"    $NetBSD: inetd.8,v 1.28 2000/06/14 15:57:26 itojun Exp $
 .\"
 .\" Copyright (c) 1998 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -401,72 +401,18 @@
 .Xr syslog 3 ,
 and terminates itself.
 .Ss IPv6 TCP/UDP behavior
-If you run servers for IPv4 and IPv6 traffic, you'll need to specify
-.Dq tcp4
-and
-.Dq tcp6
-properly on the
-.Pa inetd.conf
-lines.
-For safety reasons the author recommends you to run
-two separate process for the same server program,
+If you wish to run a server for IPv4 and IPv6 traffic,
+you'll need to run two separate process for the same server program,
 specified as two separate lines on 
 .Pa inetd.conf ,
 for
-.Dq tcp6
+.Dq tcp4
 and
-.Dq tcp4 .
-For detailed description please read on.
+.Dq tcp6 .
 .Pp
-The behavior of 
-.Dv AF_INET6
-socket is documented in RFC2553.
-Basically, it says as follows:
-.Bl -bullet -compact
-.It
-Specific bind on
-.Dv AF_INET6
-socket
-.Po
-.Xr bind 2
-with address specified
-.Pc
-should accept IPv6 traffic to that address only.
-.It
-If you perform wildcard bind
-on
-.Dv AF_INET6
-socket
-.Po
-.Xr bind 2
-to IPv6 address
-.Li ::
-.Pc ,
-and there is no wildcard bind
-.Dv AF_INET
-socket on that TCP/UDP port, IPv6 traffic as well as IPv4 traffic
-should be routed to that
-.Dv AF_INET6
-socket.
-IPv4 traffic should be seen as if it came from IPv6 address like
-.Li ::ffff:10.1.1.1 .
-This is called IPv4 mapped address.
-.It
-If there are both wildcard bind
-.Dv AF_INET
-socket and wildcard bind
-.Dv AF_INET6
-socket on one TCP/UDP port, they should behave separately.
-IPv4 traffic should be routed to
-.Dv AF_INET
-socket and IPv6 should be routed to
-.Dv AF_INET6
-socket.
-.El
-.Pp
-Because of this,
+Under various combination of IPv4/v6 daemon settings,
 .Nm
-will behave as follows.
+will behave as follows:
 .Bl -bullet -compact
 .It
 If you have only one server on
@@ -485,22 +431,13 @@
 .It
 If you have only one server on
 .Dq tcp6 ,
-Both IPv4 and IPv6 traffic will be routed to the server.
+only IPv6 traffic will be routed to the server.
+The kernel may route to the server IPv4 traffic as well,
+under certain configuration.
+See
+.Xr ip6 4
+for details.
 .El
-.Pp
-The author do not recommend the third option on the above bullets.
-RFC2553 does not define the constraint between the order of
-.Xr bind 2 ,
-nor how IPv4 TCP/UDP port number and IPv6 TCP/UDP port number
-relate each other
-.Po
-should they be integrated or separated
-.Pc .
-Implemented behavior is very different across kernel to kernel.
-Many of the servers do not properly handle IPv4 mapped address.
-Therefore, it is unwise to rely too much upon the behavior of
-.Dv AF_INET6
-wildcard bind socket.
 .Sh BUGS
 Host address specifiers, while they make conceptual sense for RPC
 services, do not work entirely correctly.  This is largely because the
@@ -510,8 +447,6 @@
 work correctly.  (Note that default host address specifiers do apply to
 RPC lines with no explicit specifier.)
 .Pp
-.Dq rpc
-or
 .Dq tcpmux
 on IPv6 is not tested enough.
 .Sh SEE ALSO



Home | Main Index | Thread Index | Old Index