欢迎访问昆山宝鼎软件有限公司网站! 设为首页 | 网站地图 | XML | RSS订阅 | 宝鼎邮箱 | 后台管理


新闻资讯

MENU

软件开发知识

KernelCommandLine 检查是否设置了(或 次  来源:宝鼎软件 时间:2018-06-11

原文出处: 暗无天日

查察网卡MAC地点

利用ip呼吁就能查察MAC地点了:

ip link show ${interface}
2: enp0s25: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN mode DEFAULT group default qlen 1000
    link/ether f0:de:f1:ad:1d:f0 brd ff:ff:ff:ff:ff:ff

个中 link/ether 后头那一串用 : 支解的6字节十六进制数就是网卡的MAC地点了,也就是 f0:de:f1:ad:1d:f0

手工修改MAC地点

利用ip呼吁也能修改MAC地点,可是需要root权限:

  1. 禁用网卡
    sudo ip link set dev ${interface} down
  2. 修改MAC地点

    有的网络运营商大概会拒绝为不正确的 MAC 分派 IP 地点,因此推荐前三个字节用真实的MAC地点前缀,后三个字节可以随机变动。

    sudo ip link set dev ${interface} address ${new_mac}

    我们再查察一下网卡的MAC地点

    ip link show ${interface}
    2: enp0s25: <BROADCAST,MULTICAST> mtu 1500 qdisc fq_codel state DOWN mode DEFAULT group default qlen 1000
        link/ether f0:de:f1:ff:ff:ff brd ff:ff:ff:ff:ff:ff

    你会发明网卡已经被改成新的MAC地点了.

  3. 最后重启网卡
    sudo ip link set dev ${interface} up

自动变动

systemd-networkd处事能通过 link 文件(底层物理网络设备设置)来配置MAC地点

我们通过 [Match] 小节来匹配某个网卡,然后通过 [Link] 小节来对网卡举办设置

Match小节

假如 “[Match]” 小节中的每一项都与某个网卡匹配, 那么视为该Link文件与该网卡匹配。若 “[Match]” 小节为空则暗示匹配任意网卡。

所有可用于匹配的选项如下:

MACAddress
匹配网卡的物理地点(MAC地点)

OriginalName
匹配网卡的”INTERFACE”属性值(网卡的内核名称)。 吸收一个空格脱离的匹配模式列表(利用shell气势气魄的通配符)。 不行用于匹配已经被用户空间改了名字的网卡。 应该小心利用此选项, 因为网卡的内核名称有大概是不不变的。

Path
匹配网卡的 “ID_PATH” 属性值(网卡的总线路径)。 吸收一个空格脱离的匹配模式列表(利用shell气势气魄的通配符)。

Driver
匹配网卡的 “DRIVER” 属性值(网卡的驱动名称)。 吸收一个空格脱离的匹配模式列表(利用shell气势气魄的通配符)。 留意,假如网卡的 “DRIVER” 属性不存在, 那么将利用 “ethtool -i” 呼吁中输出的驱动名称。

Type
匹配网卡的 “DEVTYPE” 属性值(网卡的设备范例)。 吸收一个空格脱离的匹配模式列表(利用shell气势气魄的通配符)。

Host
匹配主机的 hostname 或”machine ID”,拜见 systemd.unit(5) 中的 “ConditionHost=” 选项。

Virtualization
查抄是否运行于特定的虚拟情况中, 拜见 systemd.unit(5) 中的 “ConditionVirtualization=” 选项。

KernelCommandLine
查抄是否配置了(可能以”!”开头暗示未配置)特定的内核引导选项, 拜见 systemd.unit(5) 中的 “ConditionKernelCommandLine=” 选项。

Architecture
查抄是否运行于特定的硬件平台, 拜见 systemd.unit(5) 中的 “ConditionArchitecture=” 选项。

Link小节

Link小节可以对网卡举办多种设置,个中与修改MAC有关的选项有:

MACAddressPolicy

应该如何配置网卡的MAC地点:

  • “persistent”
  • 假如内核利用了网卡硬件固有的MAC地点(绝大大都网卡都有), 那么啥也不做,直接利用内核的MAC地点。 不然,将会随机新生成一个 确保在多次启动之间保持牢靠稳定的MAC地点(针对给定的主板与网卡)。 自动生成MAC地点的特性 要求网卡必需存在 ID_NET_NAME_* 属性, 不然无法自动生成MAC地点。

  • “random”
  • 假如内核利用了随机生成的MAC地点(而不是网卡硬件固有的MAC地点), 那么啥也不做,直接利用内核的MAC地点。 不然,将在网卡每次呈现的时候(一般在启动进程中)随机新生成一个MAC地点。 无论利用上述哪种方法生成的MAC地点, 都将配置 “unicast” 与 “locally administered” 位。

  • “none”
  • 无条件的直接利用内核的MAC地点。

    MACAddress
    在未配置 “MACAddressPolicy=” 时所利用MAC地点。
    别的,Link小节中,我们必需为某个网卡举办定名,因此必定会有 NamePolicy 可能 Name 选项