Mac查看虚拟网卡并配置

By gavin

在macOS上,虚拟网卡通常用于VPN、Docker等虚拟化或隧道网络连接。虚拟网卡通常以utunvnicbridge等命名。如果你想查看有哪些虚拟网卡以及它们的配置,可以使用命令行工具如ifconfignetworksetup

查看虚拟网卡

  1. 使用 ifconfig 命令

这个命令列出了所有网络接口,包括虚拟网卡。

ifconfig

输出示例:

utun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
inet6 fe80::aede:48ff:fe00:1122%utun0 prefixlen 64 scopeid 0xa
inet 10.0.0.1 --> 10.0.0.1 netmask 0xffffffff
utun1: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
inet6 fe80::aede:48ff:fe00:1123%utun1 prefixlen 64 scopeid 0xb
inet 10.0.0.2 --> 10.0.0.2 netmask 0xffffffff

在这个示例中,utun0utun1是两个虚拟网卡。

  1. 使用 networksetup 命令

列出所有网络服务,包括虚拟网卡:

networksetup -listallnetworkservices

输出示例:

An asterisk (*) denotes that a network service is disabled.
Wi-Fi
Bluetooth PAN
Thunderbolt Bridge
USB 10/100/1000 LAN
Thunderbolt 1
VPN (L2TP)

虚拟网卡(如VPN连接)可能会显示在此列表中。

查看虚拟网卡配置

要查看特定虚拟网卡的详细信息,可以使用以下命令:

  1. 查看网卡详细信息

使用ifconfig命令查看特定网卡的信息:

ifconfig utun0

  1. 查看DNS配置

使用scutil命令查看特定网络服务的DNS配置:

scutil --dns

或者查看特定服务的DNS配置:

scutil --get State:/Network/Service/utun0/DNS

修改虚拟网卡配置

可以使用scutilnetworksetup命令来修改虚拟网卡的配置。

  1. 使用 scutil 命令

进入scutil交互模式,然后修改配置。以下是一个示例,如何为utun0配置DNS。

sudo scutil

进入scutil后:

> open
> d.init
> d.add ServerAddresses * 8.8.8.8 8.8.4.4
> d.add SupplementalMatchDomains * mllocal.com.my
> set State:/Network/Service/utun0/DNS
> quit

  1. 使用 networksetup 命令

networksetup可以用于更改网络服务的设置,例如设置DNS服务器。

列出所有网络服务(包括虚拟网卡):

networksetup -listallnetworkservices

设置特定网络服务的DNS服务器,例如VPN:

sudo networksetup -setdnsservers "VPN (L2TP)" 8.8.8.8 8.8.4.4

示例操作

查看和修改utun0的DNS配置

  1. 查看utun0信息
ifconfig utun0

  1. 查看utun0的DNS配置
scutil --get State:/Network/Service/utun0/DNS

  1. 修改utun0的DNS配置

进入scutil交互模式:

sudo scutil

scutil交互模式中:

> open
> d.init
> d.add ServerAddresses * 8.8.8.8 8.8.4.4
> d.add SupplementalMatchDomains * mllocal.com.my
> set State:/Network/Service/utun0/DNS
> quit

总结

使用ifconfignetworksetup命令可以查看macOS系统中的虚拟网卡。通过scutil命令可以修改特定虚拟网卡的DNS配置。确保使用正确的网卡名称和配置路径,以正确应用你的设置。