虚拟机开启网络代理设置
清瞳清 2024-10-01 14:07:04 阅读 84
前言:
不管是物理主机还是实验环境中的VMware虚拟机,有时候总要访问一些镜像网站或者资源网站拉取一些学习资料,但由于国内外网络环境的差异和网络安全的问题。总是会被阻拦。物理机相对比较容易一些,今天我们来说一说虚拟机应该怎么做。
注明
这里所演示的虚拟机网络均为 <code>VMnet8
一、代理软件设置
我这里使用的是 clashX
了解更多的话请自行百度或后台私信
打开clashX的主页面-----找到设置(Settings)-----找到选项 Outbound
----请勾选上 VMnet8
选项
二、虚拟机代理设置
因为有时候需要频繁开关代理设置,所以我干脆将步骤写成了脚本的形式
<code>执行一次是开启代理,再次执行则是关闭代理
#!/bin/bash
file="/etc/profile.d/proxy.sh"code>
# 检查文件是否存在,如果不存在则创建
if [ ! -f "$file" ]; then
sudo touch "$file"
echo "代理文件不存在,已创建。"
fi
# 检查文件是否为空
if [ ! -s "$file" ]; then
# 文件为空,引导用户输入物理机 IP
echo "代理文件为空,请输入您的物理机 IP 地址:"
read IP
# 写入变量到文件
sudo tee "$file" >/dev/null <<EOF
export http_proxy="http://$IP:7891"code>
export https_proxy="http://$IP:7891"code>
export no_proxy="localhost,192.168.1.0/24,192.168.31.0/24,127.0.0.1"code>
EOF
# 使文件中的变量生效
source "$file"
echo -e "\e[32m已开启代理服务 [OK]\e[0m"
else
# 文件不为空,清空文件并使其生效
sudo echo -n > "$file"
# 使文件为空生效
source "$file"
echo -e "\e[31m已关闭代理服务 [STOP]\e[0m"
fi
执行脚本
source /root/proxy.sh
或者
bash /root/proxy.sh
source 命令仅在当前 shell 中执行,并不会影响到其他 shell。
如果你用bash执行完脚本,需要直接退出终端再重新登录,那么新的 shell 将会读取到文件中的环境变量。
验证
可以使用 export -p
命令查看环境变量是否生效
在使用 <code>curl 命令在进行验证
访问Google
访问GitHub
都可以正常访问,这样的话虚拟机代理就设置完毕啦
声明
本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。