Linux设置本地域名

更改主机名

使用hostname命令就可以查看Linux的主机名

可以使用如下命令来修改主机名

hostnamectl set-hostname eaglezsx

也可以修改其配置文件/etc/hostname里边的内容

设置本地域名解析

在/etc/hosts文件中添加一句话

192.168.188.1 www.baidu.com

保存文件后再ping一下www.baidu.com就会连接到192.168.188.1了

每一行为一条记录,分成两部分,第一部分是IP,第二部分是域名。

一个IP后面可以跟多个域名,可以是几十个甚至上百个
每一行只能有一个IP,也就是说一个域名不能对应多个IP
如果有多行中出现相同的域名(对应的ip不一样),会按最前面的记录来解析

### 如何在Linux系统中设置本地DNS服务器 #### 查看当前使用的DNS服务器 为了确认配置效果,在开始之前应当了解当前系统的默认DNS服务器。可以通过查看`/etc/resolv.conf`文件来获取这一信息[^1]。 ```bash cat /etc/resolv.conf ``` 该命令会显示当前正在使用的DNS服务器地址列表,通常情况下会有两个字段:nameserver(指定DNS服务器IP地址),以及可选的search(用于定义搜索域)。建议将首选DNS设为主服务器,次选DNS作为辅助选项。 #### 安装BIND软件包 BIND是一个广泛应用于Unix/Linux平台上的开源DNS协议实现工具集。安装前需确保已更新系统软件源至最新版本。 对于基于Red Hat/CentOS/Fedora的操作系统: ```bash yum install bind bind-utils ``` 而对于Debian/Ubuntu类发行版,则应执行如下指令: ```bash apt-get update && apt-get install bind9 dnsutils ``` 完成上述操作后即成功安装了必要的组件以支持后续配置工作[^2]。 #### 修改主配置文件 主要配置位于`/etc/named.conf`(CentOS/RHEL) 或 `/etc/bind/named.conf.local`(Debian/Ubuntu),在此处可以设定全局参数、引入其他自定义配置文件等。编辑此文件时需要注意语法准确性以免造成解析错误或其他异常情况发生。 - 设置监听端口与允许查询范围; - 添加zone声明指向具体的区域数据文件路径; 例如,在Debian环境下新增一条关于example.com域名为权威名称服务记录的方式如下所示: ```text zone "example.com" { type master; file "/var/lib/bind/db.example.com"; }; ``` 以上代码片段表示创建了一个名为“example.com”的正向查找区,并指定了其对应的数据库文件位置为`/var/lib/bind/db.example.com`。 #### 编辑区域数据文件 按照先前定义好的路径找到相应的`.db`文件并对其进行编辑,这里包含了所有有关特定域名下的资源记录(RRs),如A, MX, CNAME等等。下面给出了一部分典型的条目形式供参考: ```text $TTL 86400 @ IN SOA ns1.example.com. admin.example.com. ( 2023051701 ; Serial 3600 ; Refresh 1800 ; Retry 1209600 ; Expire 86400 ) ; Minimum TTL NS ns1.example.com. ns1 A 192.168.1.100 www A 192.168.1.101 mail A 192.168.1.102 ``` 这段文本描述了example.com域内的几项重要信息,包括序列号(Serial Number), 刷新时间(Refresh Time), 尝试间隔(Retry Interval)...等SOA记录属性,同时也列出了几个常见的子域名及其对应的真实IPv4地址(A Record)。 #### 启动服务并调整安全策略 最后一步就是让新配置生效,重启named服务使更改立即应用到运行环境中去。另外考虑到网络安全因素的影响,可能还需要适当放宽防火墙规则以便外部设备能够正常访问本机所提供的DNS服务功能。 针对iptables用户来说,添加类似这样的入站规则即可满足需求: ```bash iptables -I INPUT -p udp --dport 53 -j ACCEPT iptables -I INPUT -p tcp --dport 53 -j ACCEPT service iptables save ``` 当然如果使用的是firewalld的话则要采取不同的措施: ```bash firewall-cmd --permanent --add-service=dns firewall-cmd --reload ``` 至此整个流程已经结束,接下来就可以通过dig/nslookup这类诊断工具来进行简单的连通性测试验证是否一切顺利。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值