如何利用已购买的域名搭建站内网络

# 安装dnsmasq

首先,我们需要安装dnsmasq服务,以下是在CentOS系统上使用命令行进行安装的步骤。

```bash
sudo yum install dnsmasq

安装完成后,我们将配置三个关键的文件来搭建站内网络。

配置dnsmasq

  • 主配置文件:通常情况下,dnsmasq会自动生成主配置文件/etc/dnsmasq.conf
  • 添加内部需要解析的地址和域名:你可以创建或编辑/etc/dnsmasq.hosts文件来添加这些信息。
  • 配置上游DNS服务器:将resolv.conf配置文件复制为dnsmasq版本,并添加你的nameserver。可以通过编辑/etc/resolv.conf.dnsmasq来完成此操作。

以下是具体的配置步骤:

编辑/etc/dnsmasq.conf配置文件:

# 指定上游dns服务器
resolv-file=/etc/resolv.conf.dnsmasq

# 严格按照 resolv-file 文件中的顺序进行DNS解析
strict-order

# 监听地址
listen-address=192.168.10.1

# 使用DNS服务器
server=8.8.8.8

# 防止dns劫持
bogons=nxdomain

# 指定域名解析到特定的IP上
address=/www.hanyibo.com/192.168.1.1

# 本地域名配置文件(不支持泛域名),添加内部需要解析的地址和域名
addn-hosts=/etc/dnsmasq.hosts

# 对不通的网站使用不同的DNS服务器进行解析
server=/google.com/8.8.8.8

主要配置说明:

  • resolv-file:定义dnsmasq从哪里获取上游DNS服务器的地址,默认从/etc/resolv.conf获取。
  • strict-order:表示严格按照resolv-file文件中的顺序进行DNS解析,直到第一个解析成功为止。
  • listen-address:定义dnsmasq监听的地址,默认是监控本机的所有网卡上。
  • address:启用泛域名解析,即自定义解析A记录,例如:访问long.com时的所有域名都会被解析为192.168.1.1
  • bogs-nxdomain:对于任何被解析到此IP的域名,将响应NXDOMAIN使其解析失效。
  • server:指定使用哪个DNS服务器进行解析。

测试配置文件

为了测试配置文件是否正确,可以使用以下命令:

dnsmasq-test4.conf

以守护进程方式启动DNSMASQ做DNS缓存服务器

编辑/etc/dnsmasq.conf,添加监听地址如下:

listen-address=192.168.10.1

如果使用此主机为局域网提供默认DNS,请为该主机绑定固定IP地址,并设置:

listen-address=192.168.0.x

这种情况下建议配置静态IP。

多个ip地址设置

要添加多个监听地址,可以使用逗号隔开的方式指定,如下所示:

listen-address=192.168.10.1,192.168.0.2

测试安装网络工具

以下是测试安装网络工具的命令:

sudo install bind-tools
test dig www.baid.com

可视化界面

你可以从以下链接下载对应版本的可执行文件:Download WebProc

安装步骤

  • 下载解压可执行文件。
  • 安装:webproc --configuration-file /etc/dnsmasq.hosts --dnsmasq --no-daemon

如果你要以守护进程运行,可以将--no-daemon改为--daemon

注意事项

可以同时使用多个--configuration-file来加载多个配置文件。

解析配置

自动解析

/etc/dnsmasq.conf中增加如下自动解析规则:

address=/map.fyx.ingress.local/192.168.1.5
address=/map.fyx.ingress.local/192.168.1.6
address=/map.fyx.ingress.local/192.168.1.7
address=/map.fyx.ingress.local/192.168.1.11

这些规则表示所有map.fyx.ingress.local的子域名都会解析到192.168.1.5192.168.1.7及192.168.1.11

手动解析

手动解析可以修改/etc/dnsmasq.hosts文件,在其中添加解析配置:

192.168.1.11 test.fyx.com

这表示将test.fyx.com解析到192.168.1.11服务器上。

常见问题

frequent already in use

如果遇到这种情况,你可以使用以下命令查看当前占用端口的进程:

sudo netstat -tulnp | grep 53

之后可以kill掉该进程。

以上就是如何利用已购买的域名搭建站内网络的方法。希望对你有所帮助。

author