# dladm create-iptun [-t] -T type -a [local|remote]=addr,... tunnel-link
创建临时隧道。缺省情况下,该命令将创建一个持久性隧道。
如果要在隧道中配置一个持久性 IP 接口,则必须创建一个持久性隧道并且不使用 –t 选项。
指定要创建的隧道的类型。创建所有隧道类型都需要此参数。
指定对应于本地地址和远程隧道地址的字面值 IP 地址或主机名。这些地址必须有效并且已在系统中创建。取决于隧道的类型,仅指定一个地址或同时指定本地和远程地址。如果指定本地和远程地址,则必须使用逗号分隔这两个地址。
IPv4 隧道需要有本地和远程 IPv4 地址才能正常工作。
IPv6 隧道需要有本地和远程 IPv6 地址才能正常工作。
6to4 隧道需要有本地 IPv4 地址才能正常工作。
指定 IP 隧道链路。如果此发行版的网络链路管理中支持有意义的名称,则隧道名称不再限制为要创建的隧道类型。相反,可以为隧道指定任何通过管理方式选择的名称。隧道名称由字符串和物理连接点 (physical point of attachment, PPA) 编号组成,例如 mytunnel0。有关管理有意义名称的指定的规则,请参见在 Oracle Solaris 11.2 中配置和管理网络组件 中的有效链路名称的规则。
# dladm set-linkprop -p [hoplimit=value] [encaplimit=value] tunnel-link
指定 IPv6 上隧道的隧道接口的跃点限制。hoplimit 与 IPv4 上隧道的 IPv4 生存时间 (time to live, TTL) 字段等效。
指定包允许的嵌套隧道的级数。此选项仅适用于 IPv6 隧道。
为 hoplimit 和 encaplimit 属性设置的值必须处于可接受的范围内。hoplimit 和 encaplimit 属性为隧道链路属性。因此,与其他链路属性一样,这些属性通过相同的 dladm 子命令管理。您使用的子命令为 dladm set-linkprop、dladm reset-linkprop 和 dladm show-linkprop。
# ipadm create-ip tunnel-interface
其中,tunnel-interface 使用与隧道链路相同的名称。
# ipadm create-addr [-t] -a local=address,remote=address interface
其中,interface 指定隧道接口。
有关更多信息,请参见 ipadm(1M) 手册页和在 Oracle Solaris 11.2 中配置和管理网络组件 。
# ipadm show-addr interface
以下示例演示如何创建持久性 IPv6 over IPv4 隧道。
# dladm create-iptun -T ipv4 -a local=192.0.2.23,remote=203.0.113.14 private0 # dladm set-linkprop -p hoplimit=200 private0 # ipadm create-ip private0 # ipadm create-addr -T addrconf private0 private0/v6 # ipadm show-addr private0/ ADDROBJ TYPE STATE ADDR private0/v6 addrconf ok fe80::c000:217->fe80::cb00:710e
要添加备用地址,请使用相同语法。例如,可以按如下所示添加全局地址:
# ipadm create-addr -a local=2001:db8:4728::1,remote=2001:db8:4728::2 private0 private0/v6a # ipadm show-addr private0/ ADDROBJ TYPE STATE ADDR private0/v6 addrconf ok fe80::c000:217->fe80::cb00:710e private0/v6a static ok 2001:db8:4728::1->2001:db8:4728::2
请注意,IPv6 地址的前缀 2001:db8 为特殊的 IPv6 前缀,专门用于文档示例。
示例 5-2 在 IPv4 隧道上创建 IPv4 接口以下示例演示如何创建持久性 IPv4 over IPv4 隧道。
# dladm create-iptun -T ipv4 -a local=192.0.2.23,remote=203.0.113.14 vpn0 # ipadm create-ip vpn0 # ipadm create-addr -a local=10.0.0.1,remote=10.0.0.2 vpn0 vpn0/v4 # ipadm show-addr vpn0/ ADDROBJ TYPE STATE ADDR vpn0/v4 static ok 10.0.0.1->10.0.0.2
您可以进一步配置 IPsec 策略来为流经此隧道的包提供安全连接。有关信息,请参见在 Oracle Solaris 11.2 中确保网络安全 中的第 7 章 配置 IPsec。
示例 5-3 在 IPv6 隧道上创建 IPv6 接口以下示例演示如何创建持久性 IPv6 over IPv6 隧道。
# dladm create-iptun -T ipv6 -a local=2001:db8:feed::1234,remote=2001:db8:beef::4321 tun0 # ipadm create-ip tun0 # ipadm create-addr -T addrconf tun0 tun0/v6 # ipadm show-addr tun0/ ADDROBJ TYPE STATE ADDR tun0/v6 addrconf ok fe80::1234->fe80::4321
要添加地址(例如全局地址或替代本地和远程地址),请按如下所示使用 ipadm 命令:
# ipadm create-addr -a local=2001:db8:cafe::1,remote=2001:db8:cafe::2 tun0 tun0/v6a # ipadm show-addr tun0/ ADDROBJ TYPE STATE ADDR tun0/v6 addrconf ok fe80::1234->fe80::4321 tun0/v6a static ok 2001:db8:cafe::1->2001:db8:cafe::2