我怎样才能关闭这个 tun 界面?

min*_*avg 4 ipv6 networking ifconfig tunnel ip

我既不能关闭也不能删除这个tun在启动时添加的界面。

这是我运行时的输出ifconfig

eth0      Link encap:Ethernet  HWaddr 50:b7:c3:92:38:e2  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:38993 errors:0 dropped:0 overruns:0 frame:0
          TX packets:38993 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:5827743 (5.8 MB)  TX bytes:5827743 (5.8 MB)

tun       Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          inet6 addr: <some ipv6 address, hidden for privacy>/128 Scope:Global
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1280  Metric:1
          RX packets:2772 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2301 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:500 
          RX bytes:1883371 (1.8 MB)  TX bytes:216571 (216.5 KB)

virbr0    Link encap:Ethernet  HWaddr f2:49:d0:5b:ef:80  
          inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

wlan0     Link encap:Ethernet  HWaddr c8:f7:33:ac:34:56  
          inet addr:192.168.219.130  Bcast:192.168.219.255  Mask:255.255.255.0
          inet6 addr: fe80::caf7:33ff:feac:3456/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1586404 errors:0 dropped:0 overruns:0 frame:0
          TX packets:909338 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:2115233714 (2.1 GB)  TX bytes:95329457 (95.3 MB)
Run Code Online (Sandbox Code Playgroud)

通过该tun接口,我可以通过隧道访问 IPv6 网络,但由于系统的行为将 IPv6 网络优先于 IPv4,并尝试通过该隧道连接到 Web 服务器,因此它使我的速度减慢了很多。

为了禁用它,我运行了sudo ifconfig tun down,结果出现了:

$ sudo ifconfig tun down
[sudo] password for theuser: 
$ sudo ifconfig tun
tun       Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
      POINTOPOINT NOARP MULTICAST  MTU:1280  Metric:1
      RX packets:3250 errors:0 dropped:0 overruns:0 frame:0
      TX packets:2730 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:500 
      RX bytes:2194591 (2.1 MB)  TX bytes:264663 (264.6 KB)

$ sleep 10
$ sudo ifconfig tun
tun       Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
      inet6 addr: 2001:5c0:1400:a::d9/128 Scope:Global
      UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1280  Metric:1
      RX packets:6 errors:0 dropped:0 overruns:0 frame:0
      TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:500 
      RX bytes:416 (416.0 B)  TX bytes:982 (982.0 B)

$   
Run Code Online (Sandbox Code Playgroud)

几秒钟后它会再次出现!更糟糕的是,当我尝试删除该隧道时:

$ sudo ip tuntap del dev tun mode tun
ioctl(TUNSETIFF): Device or resource busy
Run Code Online (Sandbox Code Playgroud)

令人惊讶的是,它dmesg似乎没有什么特别之处:

[    0.997669] tun: Universal TUN/TAP device driver, 1.6
[    0.998470] tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
[43633.762740] Loading kernel module for a network device with CAP_SYS_MODULE (deprecated).  Use CAP_NET_ADMIN and alias netdev-tun instead.
[43995.971465] Loading kernel module for a network device with CAP_SYS_MODULE (deprecated).  Use CAP_NET_ADMIN and alias netdev-tun instead.
[43996.550325] Loading kernel module for a network device with CAP_SYS_MODULE (deprecated).  Use CAP_NET_ADMIN and alias netdev-tun instead.
[44538.652492] Loading kernel module for a network device with CAP_SYS_MODULE (deprecated).  Use CAP_NET_ADMIN and alias netdev-tun instead.
[44630.584862] Loading kernel module for a network device with CAP_SYS_MODULE (deprecated).  Use CAP_NET_ADMIN and alias netdev-tun instead.
[44630.627822] Loading kernel module for a network device with CAP_SYS_MODULE (deprecated).  Use CAP_NET_ADMIN and alias netdev-tun instead.
[44630.744474] Loading kernel module for a network device with CAP_SYS_MODULE (deprecated).  Use CAP_NET_ADMIN and alias netdev-tun instead.
[44630.858219] Loading kernel module for a network device with CAP_SYS_MODULE (deprecated).  Use CAP_NET_ADMIN and alias netdev-tun instead.
...
Run Code Online (Sandbox Code Playgroud)

编辑:运行命令sudo ip link delete tun什么也没显示,根本不起作用。

编辑

$ sudo tunctl -d tun
TUNSETIFF: Invalid argument
$
Run Code Online (Sandbox Code Playgroud)

Dub*_*ubu 5

据我所知,默认没有安装IPv6隧道软件,所以一定是你自己安装的,重新卸载对应的包就可以了。

ifconfig输出中配置的 IPv6 地址属于分配给 GOGO6 ( 2001:5c0:1000::/36)的块,因此我假设它是您需要卸载的gogoc包。


小智 5

要删除设备 tun0,我使用

sudo ip link set dev tun0 down
Run Code Online (Sandbox Code Playgroud)

有效。

  • 这相当于我已经尝试过的“sudo ifconfig tun down”。 (2认同)