ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

WSL设置添加固定IP

2022-06-28 11:00:21  阅读:153  来源: 互联网

标签:IP WSL 192.168 wsl 添加 STR


WSL设置添加固定IP

任务目标

  • 在Win端添加一个固定IP 192.168.50.99 用于X-Server界面显示.
  • 在WSL端添加一个固定IP 192.168.50.16 用于和Win端通讯.

在win端创建批处理文件

创建一个批处理文件, 例如: D:\wsl_work\Ubuntu_1604_static_ip.bat, 内容如下:

该脚本作用是

  • 向vEthernet (WSL)网卡添加一个IP 192.168.50.99

  • 向wsl子系统网卡添加一个IP 192.168.50.16

@echo off
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
netsh interface ip add address "vEthernet (WSL)" 192.168.50.99 255.255.255.0
wsl -d Ubuntu-16.04 -u root ip addr add 192.168.50.16/24 broadcast 192.168.50.255 dev eth0 label eth0:1
exit

在WSL实例里编辑~/.bashrc, 添加如下内容:

# 下面是用于判断是否执行Win端的脚本来设置添加一个固定IP
HOST_IP_STR=`hostname -I`
echo $HOST_IP_STR
AIM_IP_STR='192.168.50.16'
echo $AIM_IP_STR
if [[ $HOST_IP_STR == *$AIM_IP_STR* ]]; then
  echo "IP has set."
else
  echo "Reset IP." 
  cmd.exe /c "D:\wsl_work\Ubuntu_1604_static_ip.bat" 1>nul
fi
# 下面是用于X-server界面通讯的设置
export DISPLAY=192.168.50.99:0.0
export XDG_RUNTIME_DIR=/home/edu/.runtime-edu

这样就可以在启动WSL时, 自动为WSL添加一个固定IP地址为192.168.50.16了, 而又不会影响WSL本身的自动IP分配. (注意Win端脚本运行时, 会弹出是否以管理员身份运行, 应选择"是").

常见错误

'\\wsl$\Ubuntu-16.04\home\edu'
CMD.EXE was started with the above path as the current directory.
UNC paths are not supported.  Defaulting to Windows directory.

解决方法:
在注册表中,添加一个值即可.路径如下:
HKEY_CURRENT_USER\Software\Microsoft\Command Processor
添加值 DisableUNCCheck, 类型为 REG_DWORD并将该值设置为1 (十六进制)。

批处理文件如下:

reg add "HKEY_CURRENT_USER\Software\Microsoft\Command Processor" /v "DisableUNCCheck" /t "REG_DWORD" /d "1" /f

标签:IP,WSL,192.168,wsl,添加,STR
来源: https://www.cnblogs.com/linkyip/p/16418727.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有