centos

CentOS Golang网络配置怎么做

小樊
46
2025-08-08 11:01:26
栏目: 编程语言

CentOS上配置Golang网络主要涉及系统网络设置、环境变量配置及防火墙规则调整,具体步骤如下:

一、系统网络配置

  1. 修改网络接口文件
    编辑对应网卡配置文件(如/etc/sysconfig/network-scripts/ifcfg-ensXX),设置静态IP、网关、DNS等参数:

    BOOTPROTO=static  
    IPADDR=192.168.1.100  
    NETMASK=255.255.255.0  
    GATEWAY=192.168.1.1  
    DNS1=8.8.8.8  
    ONBOOT=yes  
    

    保存后重启网络服务:

    sudo systemctl restart network  
    

    验证网络连通性:ping www.baidu.com

  2. 配置防火墙规则
    若需开放HTTP/HTTPS端口,执行:

    sudo firewall-cmd --permanent --zone=public --add-service=http  
    sudo firewall-cmd --permanent --zone=public --add-service=https  
    sudo firewall-cmd --reload  
    

二、Golang环境变量配置

  1. 设置代理(如需)

    • HTTP/HTTPS代理:在~/.bashrc中添加:
      export HTTP_PROXY=http://proxy.example.com:8080  
      export HTTPS_PROXY=https://proxy.example.com:8080  
      
      使生效:source ~/.bashrc
    • Go模块代理:设置GOPROXY(推荐使用国内镜像):
      export GOPROXY=https://goproxy.cn,direct  
      
      同样添加到~/.bashrc并生效。
  2. 其他网络相关参数

    • 忽略特定模块校验和:export GONOSUMDB=example.com
    • 启用网络调试:export GODEBUG=net=1

三、验证配置

编写简单Go程序测试网络连接,例如:

package main  
import (  
    "fmt"  
    "net/http"  
)  
func main() {  
    resp, err := http.Get("http://www.example.com")  
    if err != nil {  
        fmt.Println("Error:", err)  
        return  
    }  
    defer resp.Body.Close()  
    fmt.Println("Status Code:", resp.Status)  
}  

运行程序:go run test.go,若返回HTTP状态码则配置成功。

注意事项

0
看了该问题的人还看了