火影 发表于 2024-10-15 16:22:27

虚拟机开启网络署理设置

前言:

不管是物理主机还是实验环境中的VMware虚拟机,有时候总要访问一些镜像网站或者资源网站拉取一些学习资料,但由于国内外网络环境的差异和网络安全的题目。总是会被阻拦。物理机相对比力轻易一些,本日我们来说一说虚拟机应该怎么做。
注明

这里所演示的虚拟机网络均为 VMnet8
一、署理软件设置

我这里使用的是 clashX 相识更多的话请自行百度或配景私信
打开clashX的主页面-----找到设置(Settings)-----找到选项 Outbound----请勾选上 VMnet8 选项
https://i-blog.csdnimg.cn/blog_migrate/9a180315b7632bd6255ceef1733dd59a.png
二、虚拟机署理设置

因为有时候必要频繁开关署理设置,所以我干脆将步骤写成了脚本的形式
执行一次是开启署理,再次执行则是关闭署理
#!/bin/bash

file="/etc/profile.d/proxy.sh"

# 检查文件是否存在,如果不存在则创建
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"
export https_proxy="http://$IP:7891"
export no_proxy="localhost,192.168.1.0/24,192.168.31.0/24,127.0.0.1"
EOF

    # 使文件中的变量生效
    source "$file"
    echo -e "\e\e[0m"
else
    # 文件不为空,清空文件并使其生效
    sudo echo -n > "$file"

    # 使文件为空生效
    source "$file"
    echo -e "\e\e[0m"
fi

执行脚本
source/root/proxy.sh
或者
bash /root/proxy.sh
   source 下令仅在当前 shell 中执行,并不会影响到其他 shell。
假如你用bash执行完脚本,必要直接退出终端再重新登录,那么新的 shell 将会读取到文件中的环境变量。
验证

可以使用 export -p 下令查看环境变量是否见效
https://i-blog.csdnimg.cn/blog_migrate/375a8632712159e6b02f2f9d194d02a3.png
在使用 curl 下令在进行验证
访问Google
https://i-blog.csdnimg.cn/blog_migrate/6189eac81b67322300bf73efef709a34.png
访问GitHub
https://i-blog.csdnimg.cn/blog_migrate/94a9f0137636ec596cce01098ab30678.png
都可以正常访问,这样的话虚拟机署理就设置完毕啦

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 虚拟机开启网络署理设置