faith(4)
NAME
faith - IPv6-to-IPv4 TCP relay capturing interface
SYNOPSIS
device faith
DESCRIPTION
- The faith interface captures IPv6 TCP traffic, for imple
- menting userland IPv6-to-IPv4 TCP relay like faithd(8).
- Each faith interface is created at runtime using interface
- cloning. This is most easily done with the ifconfig(8) create command or
- using the cloned_interfaces variable in rc.conf(5).
- Special action will be taken when IPv6 TCP traffic is seen
- on a router, and routing table suggests to route it to faith interface.
- In this case, the packet will be accepted by the router, regardless of
- list of IPv6 interface addresses assigned to the router. The packet will
- be captured by an IPv6 TCP socket, if it has IN6P_FAITH flag turned on
- and it has matching address/port pairs. In result, faith will let you
- capture IPv6 TCP traffic to some specific destination addresses. User
- land programs, such as faithd(8) can use this behavior to relay IPv6 TCP
- traffic to IPv4 TCP traffic. The program can accept some specific IPv6 TCP
- traffic, perform getsockname(2) to get the IPv6 destination address
- specified by the client, and perform application-specific address mapping to
- relay IPv6 TCP to IPv4 TCP.
- The IN6P_FAITH flag on IPv6 TCP socket can be set by using
- setsockopt(2), with level equals to IPPROTO_IPV6 and optname equals to
- IPv6_FAITH.
- To handle error reports by ICMPv6, some of ICMPv6 packets
- routed to faith interface will be delivered to IPv6 TCP, as well.
- To understand how faith can be used, take a look at source
- code of faithd(8).
- As faith interface implements potentially dangerous opera
- tion, great care must be taken when configuring faith interface. To avoid
- possible misuse, sysctl(8) variable net.inet6.ip6.keepfaith must be set
- to 1 prior to the use of the interface. When net.inet6.ip6.keepfaith is
- 0, no packet will be captured by faith interface.
- faith interface is intended to be used on routers, not on
- hosts.
SEE ALSO
- Jun-ichiro itojun Hagino and Kazu Yamamoto, An IPv6-to-IPv4
- transport relay translator, RFC3142.
HISTORY
- The FAITH IPv6-to-IPv4 TCP relay translator was first ap
- peared in WIDE hydrangea IPv6 stack.
- BSD April 10, 1999