kernel: make sure all patches are applied before running menuconfig or oldconfig
[openwrt/staging/florian.git] / docs / network.tex
index 7d811ba7f556ab6c461c6e98ae947be9ad41778d..bb23fa524438ce38067208264913105b89d7dfb4 100644 (file)
@@ -31,6 +31,8 @@ packages.
 
 When using the \texttt{'static'} method like in the example, the  options \texttt{ipaddr} and
 \texttt{netmask} are mandatory, while \texttt{gateway} and \texttt{dns} are optional.
+You can specify more than one DNS server, separated with spaces.
+
 DHCP currently only accepts \texttt{ipaddr} (IP address to request from the server)
 and \texttt{hostname} (client hostname identify as) - both are optional.
 
@@ -102,3 +104,79 @@ As value it takes a list of ports with these optional suffixes:
 The CPU port defaults to tagged, all other ports to untagged.
 On Broadcom hardware the CPU port is always 5. The other ports may vary with
 different hardware.
+
+For instance, if you wish to have 3 vlans, like one 3-port switch, 1 port in a
+DMZ, and another one as your WAN interface, use the following configuration :
+
+\begin{Verbatim}
+config switch       "eth0"
+    option vlan0    "1 2 3 5*"
+    option vlan1    "0 5"
+    option vlan2    "4 5"
+\end{Verbatim}
+
+Three interfaces will be automatically created using this switch layout :
+\texttt{eth0.0} (vlan0), \texttt{eth0.1} (vlan1) and \texttt{eth0.2} (vlan2).
+You can then assign those interfaces to a custom network configuration name
+like \texttt{lan}, \texttt{wan} or \texttt{dmz} for instance.
+
+\subsubsection{Setting up IPv6 connectivity}
+
+OpenWrt supports IPv6 connectivity using PPP, Tunnel brokers or static
+assignment.
+
+If you use PPP, IPv6 will be setup using IP6CP and there is nothing to
+configure.
+
+To setup an IPv6 tunnel to a tunnel broker, you can install the
+\texttt{6scripts} package and edit the \texttt{/etc/config/6tunnel}
+file and change the settings accordingly :
+
+\begin{Verbatim}
+config 6tunnel
+        option tnlifname     'sixbone'
+        option remoteip4        '1.0.0.1'
+        option localip4         '1.0.0.2'
+        option localip6         '2001::DEAD::BEEF::1'
+        option prefix           '/64'
+\end{Verbatim}
+
+\begin{itemize}
+    \item{\texttt{'tnlifname'}:}
+        Set the interface name of the IPv6 in IPv4 tunnel
+    \item{\texttt{'remoteip4'}:}
+        IP address of the remote end to establish the 6in4 tunnel.
+       This address is given by the tunnel broker
+    \item{\texttt{'localip4'}:}
+       IP address of your router to establish the 6in4 tunnel.
+       It will usually match your WAN IP address.
+    \item{\texttt{'localip6'}:}
+       IPv6 address to setup on your tunnel side
+       This address is given by the tunnel broker
+    \item{\texttt{'prefix'}:}
+       IPv6 prefix to setup on the LAN.
+\end{itemize}
+
+Using the same package you can also setup an IPv6 bridged connection :
+
+\begin{Verbatim}
+config 6bridge
+       option bridge   'br6'
+\end{Verbatim}
+
+By default the script bridges the WAN interface with the LAN interface
+and uses ebtables to filter anything that is not IPv6 on the bridge.
+This configuration is particularly useful if your router is not
+IPv6 ND proxy capable (see: http://www.rfc-archive.org/getrfc.php?rfc=4389).
+
+
+IPv6 static addressing is also supported using a similar setup as
+IPv4 but with the \texttt{ip6} prefixing (when applicable).
+
+\begin{Verbatim}
+config interface     "lan"
+    option ifname    "eth0"
+    option proto     "static"
+    option ip6addr    "fe80::200:ff:fe00:0/64"
+    option ip6gw     "2001::DEAF:BEE:1"
+\end{Verbatim}