设置内网linux服务器访问外网

一、问题

学校的服务器只能在内网运行,无法访问外网(如huggingface),但出于科研需要,我们有时候需要访问外网下载数据集或者其它数据。为了解决这一问题,我们可以设置服务器使用本地电脑代理来访问外网。

二、实验环境

本地电脑:windows系统(要求本机可以通过clash等访问外网)

服务器:ubuntu20.04 (实际是运行的docker,但服务器同样适用)

三、步骤

查看本机IP地址

在cmd中运行指令(注意此时应当已经在本地主机运行了代理软件):

ipconfig

记下这里的IP地址(如10.xx.xx.xx)

打开代理软件(如clash或者Mihomo Play)

设置如下

进入Linux服务器终端

运行指令

vim ~/.bashrc

在最后添加以下内容:

export http_proxy=http://:

export https_proxy=http://:

这里是你前面记下的主机IP地址,是前面代理软件中的端口号,一般为7890

这里如果不会vim编辑保存指令,请自行网上搜索(按i 进入编辑模式)

编辑完成之后,保存并退出(按ESC 退出编辑模式;键盘输入:wq再按enter)

最后为了使服务器修改后的文件生效,在终端执行命令:

source ~/.bashrc

尝试访问外网

在服务器终端输入

curl https://scholar.google.com/

成功访问外网,实现了服务器通过本地代理访问外网的目标

参考内容:使用vscode连接远程服务器,并为服务器设置代理以访问外网及访问外网失败解决办法