Closed weigeloveu closed 2 years ago
mac
是自动随机生成的。
具体代码见packages/bsp/common/usr/lib/armbian/armbian-common#L35
# set fixed IP address from first randomly assigned one. If nothing is detected, generate one.
set_fixed_mac ()
{
if [ -n "$(command -v nmcli)" ]; then
CONNECTION="$(nmcli -f UUID,ACTIVE,DEVICE,TYPE connection show --active | tail -n1)"
UUID=$(awk -F" " '/ethernet/ {print $1}' <<< "${CONNECTION}")
DEVNAME=$(awk -F" " '/ethernet/ {print $3}' <<< "${CONNECTION}")
else
DEVNAME=eth0
fi
MACADDR=$(/sbin/ip link | grep -A1 ${DEVNAME} | awk -F" " '/ether / {print $2}')
[[ -z $MACADDR ]] && get_random_mac
if [[ -n "$(command -v nmcli)" && -n $UUID ]]; then
nmcli connection modify "$UUID" ethernet.cloned-mac-address "$MACADDR"
nmcli connection modify "$UUID" -ethernet.mac-address ""
nmcli connection down "$UUID" >/dev/null 2>&1
nmcli connection up "$UUID" >/dev/null 2>&1
elif [[ -f /etc/systemd/network/$DEVNAME.network ]]; then
if ! grep '^ *MACAddress=' /etc/systemd/network/$DEVNAME.network > /dev/null; then
sed -i "s/#MACAddress=/MACAddress=$MACADDR/g" /etc/systemd/network/$DEVNAME.network
fi
fi
return 0
} # set fixed mac to the 1st active network adapter
我反复刷了两次,两次都是一样的mac,感觉没有生效。
我反复刷了两次,两次都是一样的mac,感觉没有生效。 刷回官方包找的mac地址 我目前还是用卡刷,install脚本里边可以自定义mac地址,但是没生效。然后手动在/etc/network/interfaces里边自定义mac地址也没生效,/etc/systemd/network/目录是空的,不知道要在哪改。
mac
是自动随机生成的。具体代码见packages/bsp/common/usr/lib/armbian/armbian-common#L35
# set fixed IP address from first randomly assigned one. If nothing is detected, generate one. set_fixed_mac () { if [ -n "$(command -v nmcli)" ]; then CONNECTION="$(nmcli -f UUID,ACTIVE,DEVICE,TYPE connection show --active | tail -n1)" UUID=$(awk -F" " '/ethernet/ {print $1}' <<< "${CONNECTION}") DEVNAME=$(awk -F" " '/ethernet/ {print $3}' <<< "${CONNECTION}") else DEVNAME=eth0 fi MACADDR=$(/sbin/ip link | grep -A1 ${DEVNAME} | awk -F" " '/ether / {print $2}') [[ -z $MACADDR ]] && get_random_mac if [[ -n "$(command -v nmcli)" && -n $UUID ]]; then nmcli connection modify "$UUID" ethernet.cloned-mac-address "$MACADDR" nmcli connection modify "$UUID" -ethernet.mac-address "" nmcli connection down "$UUID" >/dev/null 2>&1 nmcli connection up "$UUID" >/dev/null 2>&1 elif [[ -f /etc/systemd/network/$DEVNAME.network ]]; then if ! grep '^ *MACAddress=' /etc/systemd/network/$DEVNAME.network > /dev/null; then sed -i "s/#MACAddress=/MACAddress=$MACADDR/g" /etc/systemd/network/$DEVNAME.network fi fi return 0 } # set fixed mac to the 1st active network adapter
大佬如何改回正确的mac地址呢,我试了常规的修改/etc/network/interfaces并不好使
搜到一篇文章,情况类似 修改了这个文件,终于可以把mac地址改过来了/etc/NetworkManager/system-connections/Wired\ connection\ 1.nmconnection
也可以使用nmtui
进行修改。
系统启动后就会固定MAC
,并且是写入到配置文件中的。
如果是直接复制系统文件进行刷机的话,大概率是把这个配置文件也给复制过去了。
系统启动后就会固定
MAC
,并且是写入到配置文件中的。如果是直接复制系统文件进行刷机的话,大概率是把这个配置文件也给复制过去了。
你好,想问一下这句是不是有点问题,貌似不会执行get_random_mac
系统启动后就会固定
MAC
,并且是写入到配置文件中的。 如果是直接复制系统文件进行刷机的话,大概率是把这个配置文件也给复制过去了。你好,想问一下这句是不是有点问题,貌似不会执行
get_random_mac
它优先获取网卡(自带或自动生成)的MAC
。如果获取不到才随机生成。
搜到一篇文章,情况类似 修改了这个文件,终于可以把mac地址改过来了/etc/NetworkManager/system-connections/Wired\ connection\ 1.nmconnection
你好,请问具体怎么操作呢?求教一下,谢谢
也可以使用
nmtui
进行修改。您好,我尝试过这样修改,修改完后重启。也会回到最初的MAC地址。请问还有别的办法嘛?谢谢
麻烦提供下MAC
,我确认下具体bug
。
经测试,bullseye
和jammy
会在启动时使用一个固定的MAC
覆盖掉网卡生成的MAC
,而buster
和focal
不会。初步怀疑是systemd
或udev
的问题。
systemd
默认把MACAddressPolicy
设置为persistent
。
meson
的网卡不支持persistent MAC address
,于是systemd
会自动使用machine-id
生成MAC
覆盖掉网卡生成的MAC
。
由于armbian
官方脚本生成的镜像里面并没有删除machine-id
,所以使用同个镜像刷写的机子会拥有相同的machine-id
,进而拥有相同的MAC
。
已向官方报告此问题 armbian/build#4070
明白。谢谢
发自我的iPhone
在 2022年8月14日,18:31,hzyitc @.***> 写道:
systemd默认把MACAddressPolicy设置为persistent。
meson的网卡不支持persistent MAC address,于是systemd会自动使用machine-id生成MAC覆盖掉网卡生成的MAC。
由于armbian官方脚本生成的镜像里面并没有删除machine-id,所以使用同个镜像刷写的机子会拥有相同的machine-id,进而拥有相同的MAC。
已向官方报告此问题 armbian#4070
— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.
ea:88:de:28:67:6c 这个是JAMMY的。发自我的iPhone
在 2022年8月14日,01:44,hzyitc @.***> 写道:
麻烦提供下MAC,我确认下具体bug。
经测试,bullseye和jammy会在启动时使用一个固定的MAC覆盖掉网卡生成的MAC,而buster和focal不会。初步怀疑是systemd或udev的问题。
— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.
armbian/build#4288 应该能修复这个问题。
mac地址要手动写进去吗?我看之前的教程都是在/etc/network/interfaces里边手动写,这两台拆机之后主板上没写mac地址,如何能获取到真实的mac地址?