当前位置: 首页 > wzjs >正文

公司网站网页设计网络营销策划书

公司网站网页设计,网络营销策划书,自建淘宝客网站模板,怎么建网上商城在最近的一次部署中,我遇到一个奇怪的问题:Go 程序在运行时不使用 /etc/resolv.conf 中的 DNS 设置,导致服务无法正常访问域名。这篇文章记录下完整的排查过程和最终的解决方案。1. 问题现象我有一个部署在 KVM 虚拟机内的 Go 应用&#xff0…

在最近的一次部署中,我遇到一个奇怪的问题:Go 程序在运行时不使用 /etc/resolv.conf 中的 DNS 设置,导致服务无法正常访问域名。这篇文章记录下完整的排查过程和最终的解决方案。


1. 问题现象

我有一个部署在 KVM 虚拟机内的 Go 应用,主要功能依赖某些内网域名解析(如 api.service.internal)。而在主机中使用 digcurl 等命令都能正常解析,但 Go 程序却报错类似如下:

lookup api.service.internal on 127.0.0.53:53: server misbehaving

查看主机resolv.conf 文件内容如下:

$ cat /etc/resolv.conf
options timeout:1 rotate
search dns.koudai.com host.idcvdian.com
nameserver 10.27.0.84
nameserver 10.27.0.126

这些配置本应该能保证正常解析才对。

2. 初步怀疑:Go DNS 解析逻辑

Go 的 DNS 默认行为与传统 C 库不同。Go 在构建时是否启用 CGO 会直接影响其 DNS 解析逻辑:

构建方式DNS 实现使用 /etc/resolv.conf
CGO_ENABLED=0Go 自带 DNS 实现只使用 127.0.0.1、Google DNS 等默认配置
CGO_ENABLED=1调用系统 libc遵循 /etc/nsswitch.confresolv.conf

Go 默认静态构建时不会使用系统的 resolv.conf 进行 DNS 解析,而是使用 Go 内置的 DNS Resolver。

3. 构建方式调整

为了让 Go 程序在运行时读取主机的 /etc/resolv.conf 并使用正确的 DNS,我尝试启用 CGO:

CGO_ENABLED=1  go build -o myapp main.go

注意,启用 CGO_ENABLED=1 后会变成动态链接,依赖 libc 等系统库。此时执行 ldd 命令应能看到依赖:

$ ldd ./myapplinux-vdso.so.1 =>  (0x00007ffc6fdff000)libc.so.6 => /lib64/libc.so.6 (0x00007f624af5a000)...

而如果是静态构建(CGO_ENABLED=0),ldd 则会提示:

$ ldd ./myappnot a dynamic executable

4. 报错:找不到动态库

由于我的 KVM 虚拟机是一个极简化系统,尝试 CGO_ENABLED=1 构建后,运行程序提示找不到 libc.so.6 等依赖。解决方案:

sudo yum groupinstall "Development Tools"
sudo yum install glibc-devel

安装过程较大(可能需要几百 MB),可以只安装gcc相关

sudo yum install -y gcc glibc-devel

5. 最终构建命令模板

CGO_ENABLED=1 \
GOOS=linux GOARCH=amd64 \
go build -o ./bin/myapp main.go

6. 附加:检测是否启用 CGO

go env CGO_ENABLED

输出 1 表示启用了 CGO

http://www.dtcms.com/wzjs/325293.html

相关文章:

  • 独立域名网站建设方象科技的服务范围
  • 珠海十大网站建设公司哪家好如何推广自己产品
  • 关于对网站建设工作情况的通报百度指数api
  • 中国做机床的公司网站今日国内热点新闻头条事件
  • 学校网站怎么做注册域名要钱吗
  • wordpress oday家庭优化大师免费下载
  • 乌克兰集团网站建设百度推广创意范例
  • 有广告的网站新闻源发稿平台
  • 做饲料机械的网站百度推广关键词和创意
  • asp网站如何做伪静态手机百度app下载
  • 微信商城网站sem工作原理
  • 网站建设创新百度搜索大数据怎么查
  • 温州网站建设前十公司中牟网络推广
  • 政府网站服务建设的网站注册页面
  • 在建设一个公司网站多少钱搜索引擎优化的具体操作
  • 扬州市建设工程造价管理站网站个人主页网页设计模板
  • 厦门知名网站建设手机打开国外网站app
  • cms建站系统哪个好免费建站哪个网站最好
  • 用织梦做的网站下载南昌seo专业团队
  • 营销型网站页面布局谷歌推广教程
  • office文件包里的做网站软件网络销售管理条例
  • html5 手机网站开发叫才手机百度官网
  • 全椒县城乡规划建设局网站网络营销推广工具
  • 公众号模板网站大学生创新创业大赛
  • 游戏网站建设平台营销推广方案案例
  • 微信公众号的跳转网站怎么做网络营销的目的是什么
  • 网站制作的基本网站制作郑州
  • 个体可以做几个网站搜索百度下载安装
  • 关键词库在网站上怎么体现五种新型营销方式
  • 做网站cookie传值nba最新交易新闻