--get your your Linux knowledge
> Linux Reviews > Features > Why you want IPv6 >

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).

Meet new people