本节仅在需要配置网卡时参考。
网络接口配置文件
从版本 209 开始,systemd 提供了一个名为 systemd-networkd 命令用于处理基本的网络配置。
systemd-networkd 的配置文件可能在 /usr/lib/systemd/network 或 /etc/systemd/network 中,其中 /etc/systemd/network 中的配置文件优先级更高。
有三种配置文的类型:.link,.netdev 和 .network 。可以通过查阅 man 手册的 systemd-link(5),systemd-netdev(5) 和 systemd-network(5) 可以获得更多关于这些配置文件的详细介绍。
📢 注意: udev 可能根据你电脑的物理设备特性将网卡接口设置为不同的名称,比如 enp2s1。
如果你不能确定你的网卡名称,可以在系统启动后执行 ip link 命令查看:
ip link
这里我有两张物理网卡,其中 eth0
和 eth1
就是物理网卡的名称。
静态 IP 配置
通过以下的命令创建 eth1
的静态 IP 基本配置文件:
cat > /etc/systemd/network/10-static-eth1.network << "EOF" [Match] Name=eth1 [Network] Address=10.211.55.222/24 Gateway=10.211.55.1 DNS=10.211.55.1 EOF
在配置文件中,可以指定多个 DNS 条目。
## DHCP 配置
通过以下的命令创建 DHCP 的基本配置文件:
cat > /etc/systemd/network/10-dhcp-eth0.network << "EOF" [Match] Name=eth0 [Network] DHCP=yes EOF
需要注意的是,当前 systemd-networkd 仅能够处理 DHCPv4。
📢 注意:本文使用静态 IP,因此此步骤不需要执行!
创建 /etc/resolv.conf 文件
如果你的系统需要连接到互联网,它需要利用 DNS 服务将互联网域名解析为实际的 IP 地址,反之亦然。最好的方法是将从 ISP 或者是网络管理员那里取得的 DNS 服务器地址填入 /etc/resolv.conf。
如果需要静态的 /etc/resolv.conf 文件,请使用以下命令:
cat > /etc/resolv.conf << "EOF" # Begin /etc/resolv.conf nameserver 10.211.55.1 # End /etc/resolv.conf EOF
domain 声明可以忽略或者以 search 声明替换。
📢 注意: Google 公开 IPv4 DNS 解析服务器地址为 8.8.8.8 和 8.8.4.4。
国内也有一些 IT 公司提供公开可用的 DNS 解析服务:
- 114 DNS:114.114.114.114 和 114.114.115.115
- 阿里 DNS:223.5.5.5 和 223.6.6.6
- 百度 DNS:180.76.76.76
- OpenDNS:208.67.220.220)
配置系统主机名称
在系统启动过程中,/etc/hostname 文件用于创建系统的主机名称。
通过以下命令创建 /etc/hostname 文件:
echo "lfs" > /etc/hostname
替换为你想要设置的名称。请不要输入完整域名(Fully Qualified Domain Name,FQDN),它应该在 /etc/hosts 文件中。
自定义 /etc/hosts 文件
将确定IP地址、完整域名(Fully-Qualified Domain Name,FQDN)和可能的别名填入/etc/hosts 文件中。语法是:
IP_address myhost.example.org aliases
除非当前电脑对互联网可见(即已经注册有域名且分配有效的 IP 段——放心吧,大多数用户都没有),否则请确保 IP 地址位于专有网络 IP 段。
有效的范围是:
私人网络地址范围 | 正常前缀 |
---|---|
10.0.0.1 - 10.255.255.254 | 8 |
172.x.0.1 - 172.x.255.254 | 16 |
192.168.y.1 - 192.168.y.254 | 24 |
x 为 16-31 之间的任意值。Y 为 0-255 之间的任意值。
有效的专有 IP 地址形如 192.168.1.1,有效的完整域名形如 lfs.example.org。
就算没有网卡,也应该提供有效的完整域名,否则某些软件可能无法正常运行。
通过以下命令创建 /etc/hosts 文件:
cat > /etc/hosts << "EOF" # Begin /etc/hosts (network card version) 127.0.0.1 localhost ::1 localhost 10.211.55.222 lfs # End /etc/hosts (network card version) EOF
10.211.55.222
和 lfs
应该更改为需要设置的值(如果此 IP 地址是由网络/系统管理员分配的且电脑可以连接到存在的网络)。别名可以省略。
如果暂时不打算进行以上的配置,那直接运行下面的命令创建最通用的 /etc/hosts 文件:
cat > /etc/hosts << "EOF" # Begin /etc/hosts (no network card version) 127.0.0.1 <HOSTNAME.example.org> <HOSTNAME> localhost ::1 localhost # End /etc/hosts (no network card version) EOF
::1 为 IPv6 对应的 127.0.0.1,且为 IPv6 的回环接口。
本次分享到此结束啦~
如果觉得文章对你有帮助,点赞、收藏、关注、评论,一键四连支持,你的支持就是我创作最大的动力。
❤️ 技术交流可以 关注公众号:Lucifer三思而后行 ❤️