1*f325335cSAndrey V. Elsukov.\" Copyright (c) Andrey V. Elsukov <ae@FreeBSD.org> 2*f325335cSAndrey V. Elsukov.\" All rights reserved. 3*f325335cSAndrey V. Elsukov.\" 4*f325335cSAndrey V. Elsukov.\" Redistribution and use in source and binary forms, with or without 5*f325335cSAndrey V. Elsukov.\" modification, are permitted provided that the following conditions 6*f325335cSAndrey V. Elsukov.\" are met: 7*f325335cSAndrey V. Elsukov.\" 1. Redistributions of source code must retain the above copyright 8*f325335cSAndrey V. Elsukov.\" notice, this list of conditions and the following disclaimer. 9*f325335cSAndrey V. Elsukov.\" 2. Redistributions in binary form must reproduce the above copyright 10*f325335cSAndrey V. Elsukov.\" notice, this list of conditions and the following disclaimer in the 11*f325335cSAndrey V. Elsukov.\" documentation and/or other materials provided with the distribution. 12*f325335cSAndrey V. Elsukov.\" 13*f325335cSAndrey V. Elsukov.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND 14*f325335cSAndrey V. Elsukov.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15*f325335cSAndrey V. Elsukov.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16*f325335cSAndrey V. Elsukov.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE 17*f325335cSAndrey V. Elsukov.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18*f325335cSAndrey V. Elsukov.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19*f325335cSAndrey V. Elsukov.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20*f325335cSAndrey V. Elsukov.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21*f325335cSAndrey V. Elsukov.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22*f325335cSAndrey V. Elsukov.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23*f325335cSAndrey V. Elsukov.\" SUCH DAMAGE. 24*f325335cSAndrey V. Elsukov.\" 25*f325335cSAndrey V. Elsukov.Dd November 7, 2014 26*f325335cSAndrey V. Elsukov.Dt ME 4 27*f325335cSAndrey V. Elsukov.Os 28*f325335cSAndrey V. Elsukov.Sh NAME 29*f325335cSAndrey V. Elsukov.Nm me 30*f325335cSAndrey V. Elsukov.Nd encapsulating network device 31*f325335cSAndrey V. Elsukov.Sh SYNOPSIS 32*f325335cSAndrey V. ElsukovTo compile the 33*f325335cSAndrey V. Elsukovdriver into the kernel, place the following line in the kernel 34*f325335cSAndrey V. Elsukovconfiguration file: 35*f325335cSAndrey V. Elsukov.Bd -ragged -offset indent 36*f325335cSAndrey V. Elsukov.Cd "device me" 37*f325335cSAndrey V. Elsukov.Ed 38*f325335cSAndrey V. Elsukov.Pp 39*f325335cSAndrey V. ElsukovAlternatively, to load the 40*f325335cSAndrey V. Elsukovdriver as a module at boot time, place the following line in 41*f325335cSAndrey V. Elsukov.Xr loader.conf 5 : 42*f325335cSAndrey V. Elsukov.Bd -literal -offset indent 43*f325335cSAndrey V. Elsukovif_me_load="YES" 44*f325335cSAndrey V. Elsukov.Ed 45*f325335cSAndrey V. Elsukov.Sh DESCRIPTION 46*f325335cSAndrey V. ElsukovThe 47*f325335cSAndrey V. Elsukov.Nm 48*f325335cSAndrey V. Elsukovnetwork interface pseudo device encapsulates datagrams 49*f325335cSAndrey V. Elsukovinto IP. 50*f325335cSAndrey V. ElsukovThese encapsulated datagrams are routed to a destination host, 51*f325335cSAndrey V. Elsukovwhere they are decapsulated and further routed to their final destination. 52*f325335cSAndrey V. Elsukov.Pp 53*f325335cSAndrey V. Elsukov.Nm 54*f325335cSAndrey V. Elsukovinterfaces are dynamically created and destroyed with the 55*f325335cSAndrey V. Elsukov.Xr ifconfig 8 56*f325335cSAndrey V. Elsukov.Cm create 57*f325335cSAndrey V. Elsukovand 58*f325335cSAndrey V. Elsukov.Cm destroy 59*f325335cSAndrey V. Elsukovsubcommands. 60*f325335cSAndrey V. Elsukov.Pp 61*f325335cSAndrey V. ElsukovThis driver corresponds to RFC 2004. 62*f325335cSAndrey V. ElsukovDatagrams are encapsulated into IP with a shorter encapsulation. 63*f325335cSAndrey V. ElsukovThe original 64*f325335cSAndrey V. ElsukovIP header is modified and the modifications are inserted between the 65*f325335cSAndrey V. Elsukovso modified header and the original payload. 66*f325335cSAndrey V. ElsukovThe protocol number 55 is used for outer header. 67*f325335cSAndrey V. Elsukov.Sh NOTES 68*f325335cSAndrey V. ElsukovFor correct operation, the 69*f325335cSAndrey V. Elsukov.Nm 70*f325335cSAndrey V. Elsukovdevice needs a route to the decapsulating host that does not run over the tunnel, 71*f325335cSAndrey V. Elsukovas this would be a loop. 72*f325335cSAndrey V. Elsukov.Sh SEE ALSO 73*f325335cSAndrey V. Elsukov.Xr gif 4 , 74*f325335cSAndrey V. Elsukov.Xr gre 4 , 75*f325335cSAndrey V. Elsukov.Xr inet 4 , 76*f325335cSAndrey V. Elsukov.Xr ip 4 , 77*f325335cSAndrey V. Elsukov.Xr netintro 4 , 78*f325335cSAndrey V. Elsukov.Xr protocols 5 , 79*f325335cSAndrey V. Elsukov.Xr ifconfig 8 , 80*f325335cSAndrey V. Elsukov.Xr sysctl 8 81*f325335cSAndrey V. Elsukov.Sh AUTHORS 82*f325335cSAndrey V. Elsukov.An Andrey V. Elsukov Aq Mt ae@FreeBSD.org 83