fs4412、电脑与ubuntu相互通信
在此先记录正确的操作流程:
------------------------
|板子 192.168.9.9 |
------------------------
|
------------------------
|电脑 192.168.9.222 | //做中转用,和板子虚拟机IP要在同一网段, 且不能和它们IP一样
------------------------
|
------------------------
|虚拟机 192.168.9.120 |
------------------------
//---------确认板子和电脑是能通信的
设置电脑网卡ip 为192.168.9.222 255.255.255.0 192.168.9.1
启动板子,快速按任意键停在boot处,设置u-boot 的环境变量
# setenv serverip 192.168.9.120 //注意它与虚拟机里 ubuntu 的ip要一致
# setenv ipaddr 192.168.9.9
# setenv gatewayip 192.168.9.1
# pri /*查看设置后效果
FS4412 # pri
baudrate=115200
bootargs=root=/dev/nfs nfsroot=192.168.9.120:/nfs/rootfs rw console=ttySAC2,115200 clk_ignore_unused init=/linuxrc ip=192.168.9.9
bootcmd=tftp 41000000 uImage;tftp 42000000 exynos4412-fs4412.dtb;bootm 41000000 - 42000000
bootdelay=3
ethact=dm9000
ethaddr=11:22:33:44:55:66
gatewayip=192.168.9.1
ipaddr=192.168.9.9
netmask=255.255.255.0
serverip=192.168.9.120
*/
# ping 192.168.9.222 //测试网络是否连通 ,注意在u-boot中, 它能ping电脑, 电脑不能ping它
//注意,要拔掉jtag线,否则ping 会重启
host 192.168.9.222 is alive //is alive 表示ok
# saveenv 保存设置
//---------确认电脑和虚拟机时能通信
编辑 -> 虚拟网络编辑器 -> VMnet0 桥接到(选连板子的网卡) //注意不要用automic,应手动指定对应的网卡
虚拟机 -> 设置 -> 网卡适配器 -> 自定义 (选 VMnet0) /*使虚拟机内的虚拟网卡,关联到电脑实际用到的网卡
通过选VMnet0 和 VMnet1 。实现连板子,还是上internet的切换
*/
点ubuntu右上角网络图标 -> 右键选编辑连接 -> 全删掉 -> 添加(改新连接名称为board)
-> IPV4 设置 -> 方法(选手动) -> 点添加 设置为 192.168.9.120 255.255.255.0 192.168.9.1 并保存退出
点右上角网络图标,先断开,再选board连接 // 通过选board,和internet 实现连板子,还是上internet的切换
$ ifconfig //看ip是否已变为了192.168.9.120
$ ping 192.168.9.222 //测试电脑和虚拟机是否联通 (如不通,可尝试修复一下网卡,重启虚拟机)
//---------确认板子能和虚拟机能通讯
$ reset 重启boot
$ ping 192.168.9.120 //注意: boot阶段是板子能ping 电脑 ,电脑不能ping板子
host 192.168.9.120 is alive //通讯OK ,失败会显示not alive
}
经上述操作,本人根本不能ping通任何主机与ubuntu,原因发现我把电脑的ip看错了,本人用的是一根usb转网线的接口连接电脑,电脑端网络共享中心是这样子的:
上面的WLAN是我连接的无线路由器,下面以太网2才是我ARM板连接电脑的那根线,双击打开,详细信息中会有ipv4地址,(与我之前看的WLAN地址完全不一样)重新在uboot中设置ipaddr、gatewayip、serverip,或者在cmd命令中ipconfig查看地址:
我之前都是按照无线局域网WLAN设置ip,结果根本就是错的,发现要设置我自己连的那根线的ip,也就是以太网适配器以太网2的地址。