新建 Hyper-V 虚拟交换机
1.打开Hyper-V功能, 重启Windows
2.重启后, 打开Hyper-V虚拟交换机
新建一个外部交换机, 选择你连接互联网的以太网/无线网, 命名为LAN
(其他的名字也可以, 自己在后面相应修改)
修改wsl网络模式为桥接
3.修改.wslconfig
, 添加以下内容
.wslconfig
文件 在 C:\Users\yourusername
下, 如果没有, 自行创建
如果需要改成和宿主机同样的IP, 则修改为 networkingmode=mirrored
.wslconfig
的解释
[wsl2]
vmSwitch=LAN
networkingMode=bridged
ipv6=false
dhcp=false
修改完.wslconfig
文件后, 重启一下wsl, 大概等待10秒后, 开启wsl
wsl --shutdown
wsl
第三步, 修改静态IP
4.切换到wsl中, 这里以Ubuntu为例, 编辑/etc/wsl.conf
sudo nano /etc/wsl.conf
添加以下内容
[Match]
Name=eth*
[Network]
DHCP=ipv4
5.重启一下 wsl 服务
wsl --shutdown
也重启一下网络服务
sudo systemctl restart systemd-networkd.service
6.新建netplan
网络配置文件
sudo nano /etc/netplan/ubuntu-config.yaml
填入以下内容, 这里的 192.168.1.10/24
修改为自己想要的静态IP地址
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
addresses:
- 192.168.1.10/24 # IP地址 根据您需要的IP地址调整
routes:
- to: default
via: 192.168.1.1 # 网关地址 根据您的网关地址调整
nameservers:
addresses: [8.8.8.8, 8.8.4.4, 192.168.1.1] # DNS服务器地址 根据需要调整
设置权限, 使其只能被root用户访问 (不设置也行, 不设置系统会警告你...)
chmod 600 /etc/netplan/ubuntu-config.yaml
7.应用网络设置
sudo netplan apply
可能会看到以下警告, 因为wsl修改了网络模式, 警告是正常的, 不用管
WARNING:root:Cannot call Open vSwitch: ovsdb-server.service is not running.
8.重启 或 刷新网络设置
reboot
sudo systemctl restart systemd-networkd.service
9.查看IP地址
ip addr show
看到以下输出, 说明静态IP设置成功
ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 5e:bb:f6:9e:ee:fa brd ff:ff:ff:ff:ff:ff
inet 192.168.1.10/24 brd 192.168.1.255 scope global eth0
valid_lft forever preferred_lft forever
DNS 设置
sudo nano /etc/resolv.conf
填入以下内容
nameserver 8.8.8.8
nameserver 8.8.4.4
nameserver 192.168.1.1 # DNS服务器地址 根据需要调整
重启网络服务
sudo systemctl restart systemd-networkd.service
检查网络连接
ping google.com
PING google.com (142.250.76.110) 56(84) bytes of data.
64 bytes from syd09s24-in-f14.1e100.net (142.250.76.110): icmp_seq=1 ttl=118 time=1.17 ms
64 bytes from syd09s24-in-f14.1e100.net (142.250.76.110): icmp_seq=2 ttl=118 time=1.69 ms
64 bytes from syd09s24-in-f14.1e100.net (142.250.76.110): icmp_seq=3 ttl=118 time=1.66 ms
64 bytes from syd09s24-in-f14.1e100.net (142.250.76.110): icmp_seq=4 ttl=118 time=0.807 ms
看到ping成功, 则说明没有问题
如果输出ping: google.com: Temporary failure in name resolution
说明DNS设置有问题
阅读建议
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果