Linux系统连接代理有网络,但终端网络用不了解决方案

1. 配置终端全局代理环境变量
在终端中运行以下命令(临时生效,关闭终端后失效):
```bash
export http_proxy="http://用户名:密码@代理服务器地址:端口"
export https_proxy="http://用户名:密码@代理服务器地址:端口"
export ftp_proxy="http://用户名:密码@代理服务器地址:端口"
export no_proxy="localhost,127.0.0.1,公司内部域名"
```
- 如果代理无需认证,可省略 `用户名:密码@`。
- 将 `代理服务器地址:端口` 替换为公司提供的代理地址(如 `proxy.company.com:8080`)。

2. 永久生效配置
将代理配置写入 shell 的配置文件中(如 `~/.bashrc` 或 `/etc/profile`):
```bash
echo 'export http_proxy="http://代理服务器地址:端口"' >> ~/.bashrc
echo 'export https_proxy="http://代理服务器地址:端口"' >> ~/.bashrc
echo 'export no_proxy="localhost,127.0.0.1,公司内部域名"' >> ~/.bashrc
source ~/.bashrc  # 使配置立即生效
```

3. 配置 Yum 的代理
编辑 Yum 配置文件 `/etc/yum.conf`,添加代理设置:
```bash
sudo vi /etc/yum.conf
```
在文件末尾添加:
```ini
proxy=http://代理服务器地址:端口
proxy_username=用户名  # 如果需要认证
proxy_password=密码    # 如果需要认证
```

4. 测试代理是否生效
在终端执行以下命令,检查是否能获取到网页内容:
```bash
curl -v www.baidu.com
```
- 如果返回 `200 OK`,说明代理生效。
- 如果提示连接超时或拒绝,检查代理地址、端口、认证信息是否正确。

---

**常见问题排查**
1. **代理地址错误**  
   确认代理地址、端口、协议(`http`/`https`)是否与公司提供的一致。

2. **认证失败**  
   如果代理需要认证,确保用户名和密码正确,且特殊字符已转义(如 `@` 需写为 `%40`)。

3. **防火墙或 SELinux 拦截**  
   临时关闭防火墙测试:
   ```bash
   sudo systemctl stop firewalld
   sudo setenforce 0
   ```

4. **检查 DNS 解析**  
   如果域名解析失败,尝试在 `/etc/resolv.conf` 中添加公共 DNS:
   ```ini
   nameserver 8.8.8.8
   nameserver 114.114.114.114
   ```

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值