111 lines
2.6 KiB
Markdown
111 lines
2.6 KiB
Markdown
---
|
||
sidebar_position: 4
|
||
---
|
||
|
||
# 更改MAC网卡地址
|
||
|
||
支持手动更改默认的固件 MAC 地址 ```00:11:22:33:44:55```
|
||
|
||
## 原理
|
||
|
||
:::caution
|
||
注意:本章节仅仅适合海思芯片CPU的机顶盒设备。
|
||
如果你不清楚,请勿试用!直到你完全理解什么叫做芯片为止!
|
||
:::
|
||
|
||
机顶盒的mac地址由启动阶段的 ```bootargs.bin``` 进行传递。
|
||
|
||
作者为了便利用户更改,制作了```mkbootargs```的程序提供在线制作```bootargs.bin```文件。
|
||
|
||
## 制作生成
|
||
|
||
- 原始文档:(每个系统都是单独对应的数值,请务必使用当前系统下的文档)
|
||
|
||
```/etc/bootargs_input.txt```
|
||
|
||
```html
|
||
root@hi3798mv200:~# cat /etc/bootargs_input.txt
|
||
baudrate=115200
|
||
ethaddr=00:11:22:33:44:55
|
||
ipaddr=192.168.1.10
|
||
netmask=255.255.255.0
|
||
gatewayip=192.168.1.1
|
||
serverip=192.168.1.1
|
||
bootcmd=mmc read 0 0x1FFFFC0 0x7000 0x14000;bootm 0x1FFFFC0
|
||
bootargs_512M=mem=512M mmz=ddr,0,0,48M vmalloc=500M
|
||
bootargs_1G=mem=1G mmz=ddr,0,0,48M vmalloc=500M
|
||
bootargs_2G=mem=2G mmz=ddr,0,0,48M vmalloc=500M
|
||
bootargs_768M=mem=768M mmz=ddr,0,0,48M vmalloc=500M
|
||
bootargs_1536M=mem=1536M mmz=ddr,0,0,48M vmalloc=500M
|
||
bootargs_3840M=mem=3840M mmz=ddr,0,0,48M vmalloc=500M
|
||
bootargs=model=mv200 console=ttyAMA0,115200 root=/dev/mmcblk0p9 rootfstype=ext4 rootwait blkdevparts=mmcblk0:1M(boot),1M(bootargs),4M(baseparam),4M(pqparam),4M(logo),40M(kernel),64M(busybox),512M(backup),-(ubuntu)
|
||
bootdelay=0
|
||
stdin=serial
|
||
stdout=serial
|
||
stderr=serial
|
||
|
||
```
|
||
|
||
自行修改第2行的```ethaddr=00:11:22:33:44:55``` 例如为 ```ethaddr=00:11:22:33:44:66```
|
||
|
||
***注意***:这个mac地址必须是16进制的数字或字母,强烈建议你看机顶盒背后的标签来写。
|
||
|
||
- 制作生成:
|
||
|
||
```bash
|
||
mkbootargs -s 64 -r /etc/bootargs_input.txt -o bootargs.bin
|
||
```
|
||
|
||
- 刷入第二分区:
|
||
|
||
将上一步生成的```bootargs.bin``` 刷入第2分区
|
||
|
||
```bash
|
||
dd if=bootargs.bin of=/dev/mmcblk0p2 bs=1024 count=1024
|
||
```
|
||
|
||
|
||
|
||
- 重启生效
|
||
|
||
|
||
|
||
### 自动脚本
|
||
|
||
作者也做了一个自动脚本直接完成上面的操作,
|
||
|
||
```html
|
||
http://192.168.xx.xx/macedit.php
|
||
```
|
||
|
||
|
||
:::caution
|
||
以下内容适合几乎所有机型!
|
||
:::
|
||
## 软改mac
|
||
|
||
上面的方法是硬改mac,这里也阐述一下软改的办法:
|
||
|
||
```bash
|
||
vi /etc/netplan/10-dhcp-all-interfaces.yaml
|
||
```
|
||
添加你的 mac 地址
|
||
|
||
```bash
|
||
network:
|
||
version: 2
|
||
renderer: networkd
|
||
ethernets:
|
||
all-eth-interfaces:
|
||
match:
|
||
name: "e*"
|
||
dhcp4: yes
|
||
dhcp6: yes
|
||
ipv6-privacy: yes
|
||
# 添加固定MAC地址配置
|
||
macaddress: "00:11:22:33:44:66"
|
||
```
|
||
|
||
|
||
|