wsl2 ubuntu 固定ip
时间: 2024-06-05 14:04:09 浏览: 346
WSL2 是 Windows Subsystem for Linux 2 的缩写,是一种在 Windows 上运行 Linux 系统的解决方案。要给 WSL2 Ubuntu 分配固定 IP,你需要按照以下步骤进行设置:
1. 在 Windows 上打开 PowerShell 终端,使用管理员权限运行。
2. 运行命令 `wsl --list` 查看你安装的 WSL2 发行版的名称,比如 Ubuntu。
3. 运行命令 `wsl --list --verbose` 查看该发行版的 IP 地址。
4. 运行命令 `wsl --shutdown` 关闭该发行版。
5. 打开 Ubuntu 的配置文件 `/etc/wsl.conf`,如果没有该文件则创建一个。
6. 在配置文件中添加以下内容(假设你想将 IP 地址设置为 `192.168.0.100`):
```
[network]
generateResolvConf = false
dhcpServerOverride = true
```
7. 保存并关闭配置文件。
8. 打开 Ubuntu,运行以下命令:
```
sudo ip addr add 192.168.0.100/24 dev eth0
sudo ip route add default via 192.168.0.1
```
注意替换 IP 地址和网关地址为你自己的地址和网关地址。
完成以上步骤后,重启 Ubuntu 发行版即可生效。如果你希望将这些设置作为默认设置,可以将它们添加到 `/etc/bash.bashrc` 文件中。
相关问题
wsl2 ubuntu 固定ip
wsl2 ubuntu的固定ip可以通过以下步骤设置:
1. 首先,在wsl2中打开终端。
2. 输入以下命令来查看当前的网络配置:
```
ip addr show
```
3. 在输出结果中,找到wsl2的网络接口。通常它以"eth0"或"ens33"的形式出现。
4. 找到网络接口的名称后,打开配置文件以编辑网络设置:
```
sudo nano /etc/netplan/00-wsl2-ubuntu.yaml
```
5. 在文件中添加以下内容,将"eth0"替换为你找到的网络接口名称,将"YOUR_STATIC_IP"替换为你想要设置的固定ip地址:
```
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
addresses: [YOUR_STATIC_IP/24]
gateway4: YOUR_GATEWAY_IP
nameservers:
addresses: [YOUR_DNS_SERVER_IP]
```
6. 保存并关闭文件,然后应用新的网络配置:
```
sudo netplan apply
```
7. 完成以上步骤后,wsl2 ubuntu将具有固定ip地址。
wsl桥接网络固定ip
### 配置WSL2桥接网络并设置静态IP
为了使WSL2能够通过桥接模式连接到物理网络,并分配一个固定的IP地址,需先创建虚拟交换机[^1]。
#### 创建虚拟交换机
打开PowerShell作为管理员执行命令:
```powershell
New-VMSwitch -Name "WSL" -NetAdapterName "Ethernet" -AllowManagementOS $true
```
此操作会基于指定网卡(此处假设名为`Ethernet`)建立一个新的外部类型的虚拟交换机命名为`WSL`。这使得该虚拟交换机能访问实际的局域网资源。
#### 修改WSL内核参数支持自定义网络配置
编辑或新建`.wslconfig`文件于用户的主目录下(`C:\Users\YourUsername`),加入如下内容以便让WSL识别新创建的虚拟交换机:
```ini
[wsl2]
kernelCommandLine = "net.ifnames=0 biosdevname=0"
vmSwitch="WSL"
ipAddress="192.168.x.xx" # 替换成想要设定的具体IP地址
dnsServer="8.8.8.8,8.8.4.4"# 可选DNS服务器列表,逗号分隔多个条目
```
注意替换上述模板中的占位符为适合环境的实际数值。其中`ipAddress`字段用于指明期望赋予WSL实例的静态IPv4地址;而`dnsServer`则用来声明首选和备用域名解析服务的位置。
#### 更新Linux发行版内的网络接口配置
进入特定Linux发行版本中调整其内部网络设置以匹配新的静态IP方案。对于Ubuntu而言,在终端里运行以下指令完成相应修改:
```bash
sudo nano /etc/netplan/50-cloud-init.yaml
```
找到对应ethernet部分下的renderer项改为networkd,并添加static addresses节来描述所需的固定IP详情:
```yaml
network:
ethernets:
eth0:
dhcp4: no
renderer: networkd
addresses:
- 192.168.x.xx/24 # 使用之前选定的IP地址加上子网掩码长度表示法(/24代表255.255.255.0)
gateway4: 192.168.x.1 # 默认路由指向所在LAN默认网关
nameservers:
search: [mydomain, otherdomain]
addresses: [8.8.8.8, 8.8.4.4]
```
保存更改后应用更新过的配置:
```bash
sudo netplan apply
```
以上步骤完成后重启计算机确保所有改动生效。此时再启动WSL应该就能看到它已经获得了预期的静态IP地址并且处于桥接工作状态了。
阅读全文
相关推荐















