Setting up your 2.4.xx kernel for IPv6
The steps required to compile a kernel with IPv6 support
With IPv6 all the boxes on your local network get their own unique IPv6 adresses.
If you have one IPv4 adress and a NAT firewall/router all the boxes behind your IPv4 firewall will be accessable through IPv6.
You will need to set up a (ip6tables) IPv6 firewall on the router aswell, or you can forward all IPv6 packets blindly and run IPv6 firewalls on all the clients.
To check if your kernel supports IPv6 and ip6tables firewalling:
[ ! -f /proc/net/ip6_tables_names ] && echo "Your kernel does not have IPv6 firewalling support!"
If you lack IPv6 (firewalling) support, then first, go
Code maturity level options ```>
And make sure you selected
[*] Prompt for development and/or incomplete code/drivers
Then enter the menu
Networking options ```>
and make sure you select
<*> Packet socket [*] Network packet filtering (replaces ipchains) [*] Socket Filtering <*> Unix domain sockets [*] TCP/IP networking ... <*> IP: tunneling ... [*] IP: TCP syncookie support (disabled per default) ... <*> The IPv6 protocol (EXPERIMENTAL)
- Packet socket is not essentional, but is required by some apps like tcpdump
- You also don't need "TCP syncookie support", but you should select it and read up on SYN cookies
Now it's time to enter the submenu
IPv6: Netfilter Configuration ```>
Here you probably want atleast
<*> IP6 tables support (required for filtering/masq/NAT) <*> limit match support <*> MAC address match support <*> Routing header match support (EXPERIMENTAL) <*> HL match support <*> Multiple port match support <*> netfilter MARK match support <*> IPv6 Extension Headers Match (EXPERIMENTAL) <*> Packet Length match support <*> Packet filtering <*> LOG target support <*> Packet mangling <*> MARK target support
And that's it for this menu. Now exit back to the main menu or go through the submenu
IP: Netfilter Configuration ```>
to configure NAT and IPv4.
Enter the menu
Network device support ```>
and say Y to
<*> Universal TUN/TAP device driver support
This is required to make a IPv6 tunnel!
If you have not done so already make sure you enter the menu
Ethernet (10 or 100Mbit) ```>
or, if you are a lucky bastard,
Ethernet (1000 Mbit) ```>
and say Y or M to you network adapter(s).