|
Lines 46-65
Link Here
|
| 46 |
.Xr faithd 8 . |
46 |
.Xr faithd 8 . |
| 47 |
.Pp |
47 |
.Pp |
| 48 |
Special action will be taken when IPv6 TCP traffic is seen on a router, |
48 |
Special action will be taken when IPv6 TCP traffic is seen on a router, |
| 49 |
and routing table suggests to route it to |
49 |
and the routing table suggests routing it to the |
| 50 |
.Nm |
50 |
.Nm |
| 51 |
interface. |
51 |
interface. |
| 52 |
In this case, the packet will be accepted by the router, |
52 |
In this case, the packet will be accepted by the router, |
| 53 |
regardless of list of IPv6 interface addresses assigned to the router. |
53 |
regardless of the list of IPv6 interface addresses assigned to the router. |
| 54 |
The packet will be captured by an IPv6 TCP socket, if it has |
54 |
The packet will be captured by an IPv6 TCP socket, if it has the |
| 55 |
.Dv IN6P_FAITH |
55 |
.Dv IN6P_FAITH |
| 56 |
flag turned on and it has matching address/port pairs. |
56 |
flag turned on and matching address/port pairs. |
| 57 |
In result, |
57 |
As a result, |
| 58 |
.Nm |
58 |
.Nm |
| 59 |
will let you capture IPv6 TCP traffic to some specific destination addresses. |
59 |
will let you capture IPv6 TCP traffic to some specific destination addresses. |
| 60 |
Userland programs, such as |
60 |
Userland programs, such as |
| 61 |
.Xr faithd 8 |
61 |
.Xr faithd 8 |
| 62 |
can use this behavior to relay IPv6 TCP traffic to IPv4 TCP traffic. |
62 |
can use this behavior to relay IPv6 TCP traffic to IPv4 TCP programs. |
| 63 |
The program can accept some specific IPv6 TCP traffic, perform |
63 |
The program can accept some specific IPv6 TCP traffic, perform |
| 64 |
.Xr getsockname 2 |
64 |
.Xr getsockname 2 |
| 65 |
to get the IPv6 destination address specified by the client, |
65 |
to get the IPv6 destination address specified by the client, |
|
Lines 69-94
Link Here
|
| 69 |
.Dv IN6P_FAITH |
69 |
.Dv IN6P_FAITH |
| 70 |
flag on IPv6 TCP socket can be set by using |
70 |
flag on IPv6 TCP socket can be set by using |
| 71 |
.Xr setsockopt 2 , |
71 |
.Xr setsockopt 2 , |
| 72 |
with level equals to |
72 |
with level |
| 73 |
.Dv IPPROTO_IPV6 |
73 |
.Dv IPPROTO_IPV6 |
| 74 |
and optname equals to |
74 |
and optname |
| 75 |
.Dv IPv6_FAITH . |
75 |
.Dv IPv6_FAITH . |
| 76 |
.Pp |
76 |
.Pp |
| 77 |
To handle error reports by ICMPv6, some of ICMPv6 packets routed to |
77 |
To handle error reports by ICMPv6, some ICMPv6 packets routed to |
| 78 |
.Nm |
78 |
.Nm |
| 79 |
interface will be delivered to IPv6 TCP, as well. |
79 |
interface may be delivered to IPv6 TCP, as well. |
| 80 |
.Pp |
80 |
.Pp |
| 81 |
To understand how |
81 |
To understand how |
| 82 |
.Nm |
82 |
.Nm |
| 83 |
can be used, take a look at source code of |
83 |
can be used, take a look at the source code of |
| 84 |
.Xr faithd 8 . |
84 |
.Xr faithd 8 . |
| 85 |
.Pp |
85 |
.Pp |
| 86 |
As |
86 |
As the |
| 87 |
.Nm |
87 |
.Nm |
| 88 |
interface implements potentially dangerous operation, |
88 |
interface implements potentially dangerous operations, |
| 89 |
great care must be taken when configuring |
89 |
great care must be taken when configuring it. |
| 90 |
.Nm |
|
|
| 91 |
interface. |
| 92 |
To avoid possible misuse, |
90 |
To avoid possible misuse, |
| 93 |
.Xr sysctl 8 |
91 |
.Xr sysctl 8 |
| 94 |
variable |
92 |
variable |
|
Lines 100-109
Link Here
|
| 100 |
.Li net.inet6.ip6.keepfaith |
98 |
.Li net.inet6.ip6.keepfaith |
| 101 |
is |
99 |
is |
| 102 |
.Li 0 , |
100 |
.Li 0 , |
| 103 |
no packet will be captured by |
101 |
no packets will be captured by the |
| 104 |
.Nm |
102 |
.Nm |
| 105 |
interface. |
103 |
interface. |
| 106 |
.Pp |
104 |
.Pp |
|
|
105 |
The |
| 107 |
.Nm |
106 |
.Nm |
| 108 |
interface is intended to be used on routers, not on hosts. |
107 |
interface is intended to be used on routers, not on hosts. |
| 109 |
.\" |
108 |
.\" |
|
Lines 120-124
Link Here
|
| 120 |
.%O work in progress material |
119 |
.%O work in progress material |
| 121 |
.Re |
120 |
.Re |
| 122 |
.Sh HISTORY |
121 |
.Sh HISTORY |
| 123 |
The FAITH IPv6-to-IPv4 TCP relay translator was first appeared in |
122 |
The FAITH IPv6-to-IPv4 TCP relay translator first appeared in the |
| 124 |
WIDE hydrangea IPv6 stack. |
123 |
WIDE hydrangea IPv6 stack. |