This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] Linux/BEAGLEBN:无法通过 g_ether / RNDIS usb0接口获取 IP 地址

Guru**** 2562120 points
Other Parts Discussed in Thread: AM3352, TPS65217

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/625118/linux-beaglebn-unable-to-obtain-ip-address-via-g_ether-rndis-usb0-interface

器件型号:BEAGLEBN

工具/软件:Linux

您好!

我已将内核配置为支持 g_ete/RNDIS 内置。

但是、BBB 会继续在 eth0接口上发送 DHCP 请求。 而我希望在 usb0接口上发送 DHCP 请求。

在主机端、我为 usb0接口配置了 DHCP。 实际上、当我在主机上执行 ifconfig 时、我能够找到该链接。

粘贴在以下格式的目标 boo 日志中:

正在启动内核...

[0.000000]   在物理 CPU 0x0上引导 Linux
[0.000000]   正在初始化 cgroup 子系统 CPU
[0.000000]   正在初始化 cgroup Subsys cpuacct
[0.000000]   Linux 版本4.4.3.32-gadde2ca9f8 (Vishnu@vishnuavula)(gcc 版本5.3.1 20160113 (Linaro GCC 5.3-2016.02))#2 Preem
PT Thu Sep 14 00:47:52 CEST 2017
[0.000000]   CPU:ARMv7处理器[413fc082]修订版2 (ARMv7)、CR=10c5387d
[0.000000]   CPU:PIPT/VIPT 非混叠数据高速缓存、VIPT 别名指令高速缓存
[0.000000]   机器模型:TI AM335x BeagleBone Black
[0.000000]   CMA:在0x9d000000处保留48 MIB
[0.000000]   内存策略:数据高速缓存写回
[0.000000]   CPU:所有 CPU 均在 SVC 模式下启动。
[0.000000]   AM335X ES2.1 (SGX NEON )
[0.000000]   在区域顺序和移动分组中构建了1个区域列表。  总页数:129920
[0.000000]   内核命令行:console=ttyO0、115200n8 root=/dev/nfs nfsroot=192.168.7-1:/home/vishnu/ti-processor-sdk-linux-am3
35x-EVM-03.02.00.05/targetNFS、nolock、v3、TCP、rsize=4096、wsize=4096 RW IP=DHCP

[1.075424]   libphy: 4a101000.mdio:探测
[1.079462]   DaVinci_MDIO 4a101000.MDIO:PHY[0]:device 4a101000.MDIO:00、driver SMSC LAN8710/LAN8720
[1.089373]   cpsw 4a100000.以太网:检测到的 MACID = 68:9e:19:b4:f2:22
[1.096139]   cpsw 4a100000.以太网:CPT:溢出检查周期850
[1.105302]   47401300.usb-phy 电源 VCC 未找到、使用虚拟稳压器
[1.135555]   47401b00.usb-phy 未找到使用虚拟稳压器的电源 VCC
[1.179954]   使用随机自以太网地址
[1.184527]   使用随机主机以太网地址
[1.189548]   usb0:主机 MAC 82:5a:F7:EC:61:05
[1.193974]   usb0:Mac C2:f0:5d:18:F4:84
[1.197861]   使用随机自以太网地址
[1.202345]   使用随机主机以太网地址
[1.206893]   g_ether 小工具:以太网小工具、版本:2008年阵亡将士纪念日
[1.213594]   g_ether 小工具:g_ether 就绪
[1.218107]   mousedev:PS/2鼠标设备,适用于所有鼠标
[1.224305]   i2c /dev/entries 驱动程序
[1.228816]   cputidle: enable-method 属性'ti,am3352'找到操作
[1.236406]   OMAP-Hsmmc 48060000.MMC:获得 CD GPIO
[1.313617]   ledtrig-CPU:已注册以指示 CPU 上的活动
[1.326356]   NET:注册协议系列10.
[1.332533]   SIT:IPv6 over IPv4隧道驱动程序
[1.338062]   NET:注册协议系列17.
[1.344031]   注册的密钥类型 DNS_旋 变传感器
[1.350547]   OMA_VOLTGE_LARD_INIT:未添加电压驱动器支持
[1.379605]   tps65217 0-0024:TPS65217 ID 0xe 版本1.2
[1.385280]   at24 0-0050:32768字节24c256 EEPROM、可写、1字节/写入
[1.392276]   mmc1:未设置 MAN_BKOPS_EN 位
[1.405800]   mmc1:地址0001处的新型高速 MMC 卡
[1.411839]   mmcblk0:mmc1:0001 S10004 3.56 GiB
[1.416725]   mmcblk0boot0:mmc1:0001 S10004分区1 4.00 MIB
[1.422933]   mmcblk0boot1:mmc1:0001 S10004分区2 4.00 MIB
[1.429888]    mmcblk0:P1
[1.514504]   tda998x 0-0070:找到 TDA19988
[1.519918]   tilcdc 4830e000.lcdc:bound 0-0070 (ops tda998x_ops)
[1.526011]   [DRM]支持 vblank 时间戳缓存修订版2 (2013年10月21日)。
[1.53274]   [DRM]不支持 vblank 时间戳查询的驱动程序。
[1.539002]   tilcdc 4830e000.lcdc:未报告与模式连接的连接器
[1.546206]   [DRM]找不到任何 CRTC 或尺寸- 1024x768
[1.560398]   控制台:切换到彩色帧缓冲器设备128x48
[1.571673]   tilcdc 4830e000.lcdc:fb0: 帧缓冲器件
[1.602272]   [DRM]在次要0上初始化 tilcdc 1.0.0 20121205
[1.608296]   OMAP_i2c 44e0b000。i2c:400kHz 时的总线0版本0.11
[1.615294]   at24 2-0054:32768字节24c256 EEPROM、可写、1字节/写入
[1.622488]   at24 2-0055:32768字节24c256 EEPROM、可写、1字节/写入
[1.629552]   at24 2-0056:32768字节24c256 EEPROM、可写、1字节/写入
[1.636729]   at24 2-0057:32768字节24c256 EEPROM、可写、1字节/写入
[1.64368]   OMAP_i2c 4819c000.i2c:100kHz 时的总线2版本0.11
[1.649743]   g_ether 小工具:高速配置#1:CDC 以太网(ECM)
[1.658049]   hctosys:无法打开 RTC 设备(rtc0)
[1.680119]   net eth0:正在初始化 cpsw 版本1.12 (0)
[1.685564]   net eth0:初始化 cpsw ale 版本1.4
[1.690724]   净 eth0:ALE 表大小1024
[1.697236]   net eth0:Phy found:id is:0x7c0F1
[1.702017]   libphy:找不到 Phy 4a101000.mdio:01
[1.706859]   net eth0:从机1上找不到 PHY "4a101000.MDIO:01"、错误-19
[1.719501]   IPv6:ADDRCONF (NETDEV_UP):eth0:链路未就绪
[1.742333]   发送 DHCP 请求......
[77.712261]  random:非阻塞池已初始化
[87.602220]   超时!
[87.638756]  IP-Config:永久重试(NFS 根)...
[87.644125]  net eth0:正在初始化 cpsw 版本1.12 (0)
[87.649488]  Net eth0:初始化 cpsw ale 版本1.4
[87.654771]  净 eth0:ALE 表大小1024
[87.661890]  net eth0:找到 PHY:id:0x7c0F1
[87.666880]  libphy:找不到 PHY 4a101000.MDIO:01
[87.671721]  网络 eth0:从机1上找不到 PHY "4a101000.MDIO:01"、错误-19
[87.685369]  IPv6:ADDRCONF (NETDEV_UP):eth0:链路未就绪
[87.702458]  发送 DHCP 请求...... 超时!
[175.293695] IP-Config:永久重试(NFS 根)...

请求您的指导以解决此问题。 谢谢!

此致、

Vishnu

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我们将对此进行研究。 反馈将发布在此处。

    此致、
    Yordan
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,Vishnu,

    您能否在主机 PC 上安装 Wireshard 程序并在 USB 接口上进行捕获。
    www.wireshark.org/download.html
    正如我在引导日志中看到的:
    [87.702458]发送 DHCP 请求...... 超时!
    板发送 DHCP 请求。 我想看看 DHCP 通信会发生什么情况。

    BR
    Tsvetolin Shulev
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Tsvetolin:

    到目前为止,我的调查结果如下:

    设置说明:
    主机上的 DHCP 服务器已启动并在 USB0 192.168.7.1上运行
    U-boot 通过 IPoverUSB 连接到 taget。 在 uboot 中为 BBB 目标分配一个 IP=DHCP 地址、并获取 zImage 和.dTB 文件。
    在目标上进行引导--> DHCPServer 在主机上关闭-->目标无法请求 IP 并运行到循环中。


    /var/log/syslog 上的代码段[主机侧]
    (笑声)
    9月18日22:07:09 vishnuavula systemd[1]:为 usb0启动 ifup。
    9月18日22:07:09 vishnuavula systemd[1]:正在启动 ifup for usb0...
    9月18日22:07:09 vishnuavula NetworkManager[676]: (USB0):已创建默认有线连接"有线连接1"
    9月18日22:07:09 vishnuavula NetworkManager[676]: 添加的器件(路径:/sys/devices/pci0000:00/0000:00:14.0/USB1/1-1/1:1.0/Net/usb0、iface:USB0)
    9月18日22:07:09 vishnuavula NetworkManager[676]: 锁定有线连接设置
    9月18日22:07:09 vishnuavula NetworkManager[676]: 获取非托管设备计数:1.
    9月18日22:07:09 vishnuavula NetworkManager[676]: (USB0):设备状态更改:不可用->不受管理(原因"不受管理")[2010 3]
    9月18日22:07:09 vishnuavula NetworkManager[676]: (USB0):链路断开
    9月18日22:07:09 vishnuavula 内核:[191508.346762] IPv6:ADDRCONF (NETDEV_UP):USB0:链路未就绪
    9月18日22:07:09 vishnuavula avahi-daemon[699]:在地址为192.168.7-1的 usb0.IPv4接口上加入 mDNS 多播组。
    9月18日22:07:09 vishnuavula avahi-daemon[699]:IP_Add_Membership failed:no buffer space available
    9月18日22:07:09 vishnuavula avahi-daemon[699]:在 usb0.IPv4上注册192.168.7.1的新地址记录。
    9月18日22:07:09 vishnuavula NetworkManager[676]: (USB0):连接链路
    9月18日22:07:09 vishnuavula 内核:[191508.357890] CDC_ether 1-1:1.0 usb0:kevent 12可能已被丢弃
    9月18日22:07:09 vishnuavula 内核:[191508.357947] CDC_ether 1-1:1.0 usb0:kevent 12可能已被丢弃
    9月18日22:07:09 vishnuavula systemd[1]:isc-dhcp-server.service 的启动请求重复得太快
    9月18日22:07:09 vishnuavula systemd[1]:无法启动 ISC DHCP IPv4服务器。
    9月18日22:07:09 vishnuavula systemd[1]:isc-dhcp-server.service 失败。
    (笑声)


    ISC-DHCP-服务器状态[主机端]
    ●isc-dhcp-server.service - ISC DHCP IPv4服务器
    已加载:已加载(/lib/systemd/system/isc-dhcp-server.service;已启用;供应商预设:已启用)
    活动:自 mA 以来失败(结果:启动限制)。 2017年9月18日22:07:05 CEST;22分钟前
    文档:man:dhcpd(8)
    进程:906 ExecStart=/bin/sh -EC CONFIG_FILE=/etc/dhcp/dhcpd.conf;如果[-f /etc/ltsp/dhcpd.conf ];然后 CONFIG_FILE=/etc/ltsp/dhcpd.conf;fi;[-e /var/lib/dhcp/dhcpd.leases ]||触摸/var/lib/dhcp/dhcpd.leases;chown root:root /var/lib/dhcp /var/lib/dhcp/dhcpd.leases;chexec dhcpd -user dhcpd -group dhcpd -f -4 -pf /run/dhcp-server/dhcpd.pid -cf CONFIG_FILE$接口(code=SIGNAL、终止)
    进程:903 ExecStartPre=/bin/chown dhcpd:dhcpd /run/dhcp-server (代码=退出、状态= 0/Success)
    主 PID:906 (代码=已终止、信号=术语)

    9月 18 22:07:05 vishnuavula sh[906]:将0个新动态主机 Decls 写入租约文件。
    9月 18 22:07:05 vishnuavula sh[906]:将1个租约写入租约文件。
    9月 18 22:07:05 vishnuavula systemd[1]:正在停止 ISC DHCP IPv4服务器...
    9月 18 22:07:05 vishnuavula systemd[1]:isc-dhcp-server.service 的启动请求重复得太快
    9月 18 22:07:05 vishnuavula systemd[1]:无法启动 ISC DHCP IPv4服务器。
    9月 18 22:07:05 vishnuavula systemd[1]:装置 isc-dhcp-server.service 进入失败状态。
    9月 18 22:07:05 vishnuavula systemd[1]:isc-dhcp-server.service 失败。
    9月 18 22:07:09 vishnuavula systemd[1]:isc-dhcp-server.service 的启动请求重复得太快
    9月 18 22:07:09 vishnuavula systemd[1]:无法启动 ISC DHCP IPv4服务器。
    9月 18 22:07:09 vishnuavula systemd[1]:isc-dhcp-server.service 失败。


    USB0 [主机侧]上的 Wireshark 捕获
    确实捕获了来自客户端的 DHCP 请求数据包

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    usb0接口不可预测。 有时、它列在主机侧(而 BBB 目标位于 Uboot shell 中)、有时我需要手动 ifup usb0。 即使如此,DHCP 服务器也只随机绑定到 usb0接口。

    这显然是未为目标分配 IP 和未加载 uImage 的原因、即使加载 uImage、在内核阶段引导也会失败、等待 DHCP。

    很好的帮助!

    此致、

    Vishnu