ophub / amlogic-s9xxx-armbian

Support for Armbian in Amlogic, Rockchip and Allwinner boxes. Support a311d, s922x, s905x3, s905x2, s912, s905d, s905x, s905w, s905, s905l, rk3588, rk3568, rk3399, rk3328, h6, etc.
GNU General Public License v2.0
5.7k stars 1.83k forks source link

随机MAC不生效,MAC仍然为安卓系统的 #656

Closed MDCY9008 closed 1 year ago

MDCY9008 commented 1 year ago

image 执行armbian-install后,已经正常将MAC写入并编译为boot.scr,但未生效,仍然为安卓系统的MAC。

MDCY9008 commented 1 year ago

个人猜测是在进入U盘系统时,NetworkManager已将机载MAC信息写入了配置文件。

ophub commented 1 year ago

我也发现没生效。

/etc/network/interfaces 这里指定可以生效。

auto eth0
iface eth0 inet dhcp
        hwaddress ether 12:34:56:78:9A:BC

现在的设置是前些天改的,有人不喜欢自定义MAC,必须要安卓原厂的。

MDCY9008 commented 1 year ago

我也发现没生效。

/etc/network/interfaces 这里指定可以生效。

auto eth0
iface eth0 inet dhcp
        hwaddress ether 12:34:56:78:9A:BC

现在的设置是前些天改的,有人不喜欢自定义MAC,必须要安卓原厂的。

阿这。。。顺便提个小建议吧 image 如果系统默认启动了networkmanagernetwork的配置文件保持默认状态比较合理,这样开机的时候不会冲突,出现双IP掉线的情况。

ophub commented 1 year ago

你测试好了pr一下修改方案吧。

MDCY9008 commented 1 year ago

你测试好了pr一下修改方案吧。

所以MAC怎么搞,还需要随机吗,如果默认用NetworkManager设置随机MAC比较麻烦需要更换方法,如果要原来的方法就不用修改我注释的这些,把networkmanager的配置文件中manager=true改为false就能避免冲突。

livelier commented 1 year ago

@ophub @MDCY9008 没有生效的 MAC,内核版本都是 5.15.y 吗?或者说,是怎样操作后,MAC 没有生效。

例如: 使用安卓 bootloader,没有使用主线 u-boot。 使用 usbsd 卡,没有写入 emmc。 ...

boot.csr 中修改 MAC 是我提出的,目的解决某些人,在某种环境下,仅使用 NetworkManager 需要所谓的 Permanent MAC,而不是 clone MAC 的需求。

MDCY9008 commented 1 year ago

@ophub @MDCY9008 没有生效的 MAC,内核版本都是 5.15.y 吗?或者说,是怎样操作后,MAC 没有生效。

例如: 使用安卓 bootloader,没有使用主线u-boot。 使用usb或sd卡,没有写入emmc。 ...

boot.csr 中修改 MAC 是我提出的,目的解决某些人,在某种环境下,仅使用 NetworkManager 需要所谓的 Permanent MAC,而不是 clone MAC 的需求。

内核5.15 安卓uboot u盘写入进emmc。 我看第一次启动的时候,networkmanager把板载mac写入进配置文件的clone mac里了。

ophub commented 1 year ago

我在n1(s905d),tx3(s905x3)上都是写入emmc使用的,用的安卓的bootloader ,在usb上启动时我看到的MAC地址也是原厂的。

因为最近测试脚本时刷过几次系统都发现这个boot.cmd的mac无效,所以前天在调整rebuild的时候,把之前在里面添加的在boot.cmd里自定义mac的脚本也先删除了,安装脚本armbian-install里还保留了,但是测试boot.cmd的设定无效。

ophub commented 1 year ago

/etc/network/interfaces 这里指定MAC地址可能编缉会更方便一些,注释掉就是安卓原盒子的,启用就是自定义的(可以在文件里默认为#注释了,有需要的自己打开)。这样比mkimage更简单一点。

教大家改boot.cmd如果操作不当会启动不了。

livelier commented 1 year ago

/etc/network/interfaces 这里指定MAC地址可能编缉会更方便一些,注释掉就是安卓原盒子的,启用就是自定义的(可以在文件里默认为#注释了,有需要的自己打开)。这样比mkimage更简单一点。

是的 o大,这个方式确实方便。但是只有在使用安卓 bootloader 时,读取到是安卓盒子原有 mac address。 如果使用主线u-boot时,且 /etc/network/interfaces 被注释掉,读取到的 mac address 并不是安卓盒子原有的。

使用 NetworkManager 而注释掉 /etc/network/interfaces 时,对 MAC address 需要修改使用 clone mac, 参考 Armbian 使用文档 12.7.7 的方法 。

“Permanent MAC” 方式修改,使用安卓 bootloader 我抽空再测一下。

ophub commented 1 year ago

好的,我先恢复了原来MAC地址的代码,默认注释了,由系统分配。

univerioiln233 commented 1 year ago

我也发现没生效。 /etc/network/interfaces 这里指定可以生效。

auto eth0
iface eth0 inet dhcp
        hwaddress ether 12:34:56:78:9A:BC

现在的设置是前些天改的,有人不喜欢自定义MAC,必须要安卓原厂的。

阿这。。。顺便提个小建议吧 image 如果系统默认启动了networkmanagernetwork的配置文件保持默认状态比较合理,这样开机的时候不会冲突,出现双IP掉线的情况。

有帮助,之前我只注释了eth两行。原来lo两行默认没注释