Add new package for configuring 6rd tunnels.
This patch adds support for manually configuring 6rd tunnels. It depends on
the netifd patches I sent earlier, which add 6rd support.
A basic interface configuration looks like:
config interface 'wan6'
option proto '6rd'
option peeraddr '192.0.2.1'
option ip6prefix '2123::'
option ip6prefixlen '16'
option ip4prefixlen '0'
Where ip4prefixlen is optional and actually defaults to 0, which would use all
bits of the IPv4 in the calculated IPv6 subnet.
I believe it should be possible to configure a regular 6to4 tunnel using this,
and that we may want to merge the two eventually, but there are some larger
differences between the two at the moment:
- 6rd addresses can be more difficult to calculate. My ISP, for example, has
a setup with a v6 mask of 43 bits, and a v4 mask of 19.
- 6to4 has support for configuring radvd. This is something we want, of
course, but it seems best to deal with this in a separate patch.
Just creating a new package looked like the quickest way to get this in.
This work is based on the 6in4 package, and work by Stijn Tintel.
Signed-off-by: Stéphan Kochen <stephan@kochen.nl>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@32431 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-06-19 02:08:18 +03:00
|
|
|
#
|
|
|
|
# Copyright (C) 2010-2012 OpenWrt.org
|
|
|
|
#
|
|
|
|
# This is free software, licensed under the GNU General Public License v2.
|
|
|
|
# See /LICENSE for more information.
|
|
|
|
#
|
|
|
|
|
|
|
|
include $(TOPDIR)/rules.mk
|
|
|
|
|
|
|
|
PKG_NAME:=6rd
|
2012-06-19 02:08:20 +03:00
|
|
|
PKG_VERSION:=2
|
Add new package for configuring 6rd tunnels.
This patch adds support for manually configuring 6rd tunnels. It depends on
the netifd patches I sent earlier, which add 6rd support.
A basic interface configuration looks like:
config interface 'wan6'
option proto '6rd'
option peeraddr '192.0.2.1'
option ip6prefix '2123::'
option ip6prefixlen '16'
option ip4prefixlen '0'
Where ip4prefixlen is optional and actually defaults to 0, which would use all
bits of the IPv4 in the calculated IPv6 subnet.
I believe it should be possible to configure a regular 6to4 tunnel using this,
and that we may want to merge the two eventually, but there are some larger
differences between the two at the moment:
- 6rd addresses can be more difficult to calculate. My ISP, for example, has
a setup with a v6 mask of 43 bits, and a v4 mask of 19.
- 6to4 has support for configuring radvd. This is something we want, of
course, but it seems best to deal with this in a separate patch.
Just creating a new package looked like the quickest way to get this in.
This work is based on the 6in4 package, and work by Stijn Tintel.
Signed-off-by: Stéphan Kochen <stephan@kochen.nl>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@32431 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-06-19 02:08:18 +03:00
|
|
|
PKG_RELEASE:=1
|
|
|
|
|
|
|
|
include $(INCLUDE_DIR)/package.mk
|
|
|
|
|
|
|
|
define Package/6rd
|
|
|
|
SECTION:=ipv6
|
|
|
|
CATEGORY:=IPv6
|
|
|
|
DEPENDS:=+kmod-ipv6 +kmod-sit
|
|
|
|
TITLE:=6rd configuration support
|
|
|
|
MAINTAINER:=Stéphan Kochen <stephan@kochen.nl>
|
|
|
|
PKGARCH:=all
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Package/6rd/description
|
|
|
|
Provides support for 6rd tunnels in /etc/config/network.
|
|
|
|
Refer to http://wiki.openwrt.org/doc/uci/network for
|
|
|
|
configuration details.
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Build/Prepare
|
|
|
|
mkdir -p $(PKG_BUILD_DIR)
|
|
|
|
$(CP) ./src/* $(PKG_BUILD_DIR)/
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Build/Configure
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Build/Compile
|
|
|
|
$(MAKE) -C $(PKG_BUILD_DIR) \
|
|
|
|
CC="$(TARGET_CC)" \
|
|
|
|
CFLAGS="$(TARGET_CFLAGS) -Wall" \
|
|
|
|
LDFLAGS="$(TARGET_LDFLAGS)"
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Package/6rd/install
|
|
|
|
$(INSTALL_DIR) $(1)/usr/sbin
|
|
|
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/6rdcalc $(1)/usr/sbin/
|
|
|
|
$(INSTALL_DIR) $(1)/lib/netifd/proto
|
|
|
|
$(INSTALL_BIN) ./files/6rd.sh $(1)/lib/netifd/proto/6rd.sh
|
|
|
|
endef
|
|
|
|
|
|
|
|
$(eval $(call BuildPackage,6rd))
|