虚拟机开启网络代理设置

前言:

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

注明

这里所演示的虚拟机网络均为 VMnet8

一、代理软件设置

我这里使用的是 clashX 了解更多的话请自行百度或后台私信

打开clashX的主页面-----找到设置(Settings)-----找到选项 Outbound----请勾选上 VMnet8 选项
在这里插入图片描述

二、虚拟机代理设置

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

#!/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[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 命令查看环境变量是否生效
在这里插入图片描述
在使用 curl 命令在进行验证

访问Google
在这里插入图片描述

访问GitHub
在这里插入图片描述
都可以正常访问,这样的话虚拟机代理就设置完毕啦

  • 10
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值