环境:Ubuntu18
固件链接: https://pan.baidu.com/s/1dqcKq1CRhuH3czVI1cQJSA 提取码: tf8u
内核链接:Index of /~aurel32/qemu/mips
提取固件:
binwalk -Me HG532eV100R001C01B020_upgrade_packet.bin
由此可知,该固件的内核是32位大端序(mips),因此下载其中的vmlinux-2.6.32-5-4kc-malta
内核以及debian_squeeze_mips_standard.qcow2
镜像文件,都放到新建的文件夹(mips)中
配置网络环境:
sudo brctl addbr Virbr0
sudo ifconfig Virbr0 192.168.244.133/24 up
sudo tunctl -t tap0
sudo ifconfig tap0 192.168.244.134/24 up
sudo brctl addif Virbr0 tap0
配置qemu启动环境:
在mips文件夹中新建qemu启动脚本,命名为 start.sh
vim /opt/tools/mipsel/start.sh,写入以下配置
sudo qemu-system-mips
-M malta \
-kernel vmlinux-2.6.32-5-4kc-malta \
-hda debian_squeeze_mips_standard.qcow2 \
-append "root=/dev/sda1 console=tty0" \
-netdev tap,id=tapnet,ifname=tap0,script=no \
-nographic
启动qemu,运行start.sh脚本(./start.sh)
默认的登录名和密码都是root
设置网络:
设置的ip地址不能和宿主机ip地址相同,否则后面ping不通路由环境(此时主机ip为192.168.244.131)
ifconfig eth0 192.168.244.132/24
宿主机ping通路由器环境
ping 192.168.244.132
挂载文件:
在固件包下打开终端输入以下命令
scp -r ./squashfs-root root@192.168.244.132:/root/
在路由环境里面输入以下命令
mount -o bind /dev ./squashfs-root/dev/
mount -t proc /proc/ ./squashfs-root/proc/
chroot squashfs-root /bin/sh
开启路由服务:
在ubuntu终端输入以下内容
ssh root@192.168.244.132
chroot squashfs-root /bin/sh
./bin/upnp
./bin/mic
这时我们查看路由环境,刚配置的ip都变了,现在改回去
命令如下:
ifconfig eth0 192.168.244.138/24 up
ifconfig br0 192.168.244.139/24 up
仿真验证:
打开浏览器进行192.168.244.138,若出现连接不安全,将该地址添加信任即可
至此,路由器仿真环境搭建成功