OpenWrt – IPv6 Tunnel Broker

 
  1. Dostawca IPv6
  2. Co potrzebujemy (paczki)
  3. Konfiguracja
  4. Test połączenia

protokół IPv6

Już dawno międzynarodowa organizacja IANA rozdała ostatnie pule adresów IPv4 wciąż jednak regionalni dostawcy Internetu nie kwapią się z wdrożeniem nowego protokołu IPv6. Pomimo takiej postawy ISP są rozwiązania dzięki którym możemy już teraz korzystać z protokołu nowej generacji.

Do zrealizowania tego poradnika potrzebujemy publicznego adresu IP na interfejsie wan oraz OpenWrt w wersji 12.09.1 oraz późniejszej.

Dostawca ipv6

Jest wiele serwisów oferujących adresy, jednak  w tym przypadku skorzystamy z serwisu IPv6 Tunnel Broker (Hurricane Electric – zwanego dalej HE). Pierwsze co robimy to rejestrujemy się w serwisie –wybieramy na stronie  „Register” i uzupełniamy dane. Następnie po lewej stronie wybieramy „Create Regular Tunnel” oraz wybieramy najbliższy nam serwer. Po zatwierdzeniu zostanie założony  tunel. Otrzymamy nowa podsieć  /64 . Następnie gromadzimy następujące dane potrzebne do konfiguracji tunelu:

  1. identyfikator użytkownika – znajduje się on na zakładce „Main Page” jako „User ID”
  2. hasło – to jest hasło do serwisu HE
  3. tunnelid – zakładka „IPv6 Tunnel”, jako „Tunnel ID”
  4. zdalny adres ipv4 – zakładka „IPv6 Tunnel” jako „Server IPv4 Address”
  5. lokalny koniec tunelu ipv6 – zakładka „IPv6 Tunnel” jako „Client IPv6 Address”
  6. rutowana sieć /64 – zakładka „IPv6 Tunnel” jako „Routed /64”

Co potrzebujemy (paczki)

Dla wersji Barrier Breaker oraz późniejszych jest już zainstalowane natywne wsparcie IPv6 wraz z DHCPv6, RA, DHCPv6-Server i zaporą IPv6 oraz jest domyślnie skonfigurowane. Dla obsługi LuCI instalujemy pakiet luci-proto-ipv6. Za obsługę tunelu odpowiedzialny jest pakiet 6in4.

# opkg update
# opkg install 6in4 luci-proto-ipv6

Dla wersji Attitude Adjustment 12.09.1

# opkg update
# opkg install ipv6-support ip6tables kmod-ip6tables 6relayd odhcp6c 6in4 luci-proto-ipv6

Konfiguracja

/etc/config/network (HEnet tunnelbroker)

config interface wan6
    option proto  6in4
    option peeraddr  62.12.34.56
    option ip6addr  2001:DB8:2222:EFGH::2/64
    option ip6prefix  2001:DB8:1234:ABCD::/64
    option tunnelid  123456
    option username  tb1234567890.12345678
    option password  haslo

Opis do powyższej sekcji:

  • peeraddr to zdalny adres ipv4 naszego tunelu – „Server IPv4 Address”
  • ip6addr to lokalny koniec tunelu ipv6 – „Client IPv6 Address”
  • tunnelid to „Tunnel ID”
  • username to „User ID” – identyfikator, nie nazwa użytkownika
  • password to hasło w czystej postaci

/etc/config/network (LAN)

config interface lan
    option ip6assign  60
    option ip6hint  10
    ...

Gdzie

  • option ip6assign 60 odpowiada za prefix jaki dostanie interfejs br-lan
  • option ip6hint 10 to w której podsieci będzie nasz br-lan

/etc/config/firewall

Teraz musimy odpowiednio skonfigurować nasz firewall, tzn. do strefy wan musimy dodać nasz nowy interfejs wan6.

config zone
    option name wan
    option network wan wan6
    option input  REJECT
    option output  ACCEPT
    option forward  REJECT
    option masq

Otwieramy firewall dla protokołu IPv6

config rule
    option _name 'HE-IP6'
    option src 'wan'
    option proto '41'
    option target 'ACCEPT'

/etc/config/6relayd

Do rozgłaszania prefiksu sieci oraz do przydzielania adresów IPv6 posłuży nam 6relayd

config server default
    option network  lan
    option rd  server
    option dhcpv6  server
    option management_level  1

Test połączenia

W celu sprawdzenia prawidłowości działania obsługi IPv6 udajemy się na stronę http://ipv6test.google.com lub http://test-ipv6.com/ .

jak_tam_ipv6