Prerequisite

archlinux-2025.03.01-x86_64

systemd-networkd

用户可取得 root 权限

实践操作

创建网络配置文件

若无此文件夹则

sudo mkdir -p /etc/systemd/network/

编辑/新建文件 20-wired-eth1.network

sudo vim /etc/systemd/network/20-wired-eth1.network

添加以下内容

[Match]
Name=eth1
MACAddress=00155D20830A

[Network]
Address=192.168.138.4/24
#Gateway=192.168.138.1
#DNS=8.8.8.8

[Link]
MACAddress=00155D20830A
  • [Match] 部分:指定此配置适用的网络接口

    • Name=eth1:网络接口名称
    • MACAddress=00155D20830A:网络接口的 MAC 地址
  • [Network] 部分:网络配置信息

    • Address=192.168.138.4/24:IPv4 地址和子网掩码
    • #Gateway=192.168.138.1:默认网关(取消注释以启用)
    • #DNS=8.8.8.8:DNS 服务器(取消注释以启用)
  • [Link] 部分:链路层配置

    • MACAddress=00155D20830A:可以用来设置或覆盖网络接口的 MAC 地址

启用 systemd-networkd 服务

sudo systemctl enable systemd-networkd
sudo systemctl start systemd-networkd

重启网络接口

sudo ip link set eth1 down
sudo ip link set eth1 up

或是重启 systemd-networkd

sudo systemctl restart systemd-networkd.service

如果需要验证配置是否生效,可以使用以下命令:

ip addr show eth1
[microcharon@archlinux ~]$ ip addr show eth1
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:15:5d:20:83:23 brd ff:ff:ff:ff:ff:ff
    altname enx00155d208323
    inet 192.168.138.4/24 brd 192.168.138.255 scope global eth1
       valid_lft forever preferred_lft forever
    inet6 fe80::d3f0:44d2:8143:d5c5/64 scope link 
       valid_lft forever preferred_lft forever
    inet6 fe80::215:5dff:fe20:8323/64 scope link proto kernel_ll 
       valid_lft forever preferred_lft forever

参考资料

systemd-networkd - ArchWiki

Arch Linux 用 systemd-networkd 设置静态IP - 王舰 - 博客园

最后修改:2025 年 03 月 15 日
如果觉得我的文章对你有用,请随意赞赏