在macOS上,虚拟网卡通常用于VPN、Docker等虚拟化或隧道网络连接。虚拟网卡通常以utun、vnic或bridge等命名。如果你想查看有哪些虚拟网卡以及它们的配置,可以使用命令行工具如ifconfig和networksetup。
查看虚拟网卡
- 使用
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
在这个示例中,utun0和utun1是两个虚拟网卡。
- 使用
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连接)可能会显示在此列表中。
查看虚拟网卡配置
要查看特定虚拟网卡的详细信息,可以使用以下命令:
- 查看网卡详细信息:
使用ifconfig命令查看特定网卡的信息:
ifconfig utun0
- 查看DNS配置:
使用scutil命令查看特定网络服务的DNS配置:
scutil --dns
或者查看特定服务的DNS配置:
scutil --get State:/Network/Service/utun0/DNS
修改虚拟网卡配置
可以使用scutil或networksetup命令来修改虚拟网卡的配置。
- 使用
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
- 使用
networksetup命令:
networksetup可以用于更改网络服务的设置,例如设置DNS服务器。
列出所有网络服务(包括虚拟网卡):
networksetup -listallnetworkservices
设置特定网络服务的DNS服务器,例如VPN:
sudo networksetup -setdnsservers "VPN (L2TP)" 8.8.8.8 8.8.4.4
示例操作
查看和修改utun0的DNS配置
- 查看
utun0信息:
ifconfig utun0
- 查看
utun0的DNS配置:
scutil --get State:/Network/Service/utun0/DNS
- 修改
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
总结
使用ifconfig和networksetup命令可以查看macOS系统中的虚拟网卡。通过scutil命令可以修改特定虚拟网卡的DNS配置。确保使用正确的网卡名称和配置路径,以正确应用你的设置。