如何在笔记本电脑和嵌入式设备之间建立以太网连接

时间:2009-08-20 19:16:28

标签: network-programming protocols network-protocols ethernet

我正在设计一个使用以太网连接到计算机的设备。它已经内置了一个mac控制器。当我连接设备时,所有发生的事情都是计算机广播一堆DHCP发现数据包和其他一些我认为试图找到设备并建立连接的数据包。我想我需要让我的设备在这一点上用某种确认包响应,但我不确定是什么?以前有人做过这样的事吗?感谢

我正在使用wireshark查看数据包。输出看起来像这样:

     time       source                 destination       protocol              info
 1 0.000000    0.0.0.0               255.255.255.255       DHCP     DHCP Discover - Transaction ID 0xc82a69f
 2 4.000064    0.0.0.0               255.255.255.255       DHCP     DHCP Discover - Transaction ID 0xc82a69f
 3 10.688469   0.0.0.0               255.255.255.255       DHCP     DHCP Discover - Transaction ID 0xb452266b
 4 14.690625   0.0.0.0               255.255.255.255       DHCP     DHCP Discover - Transaction ID 0xb452266b
 5 22.690576   0.0.0.0               255.255.255.255       DHCP     DHCP Discover - Transaction ID 0xb452266b
 6 38.690605   0.0.0.0               255.255.255.255       DHCP     DHCP Discover - Transaction ID 0xb452266b
 7 62.652821   my_ip                 XXX.XXX.255.255       BROWSER  Local Master Announcement MYLAPTOP, Workstation, Server, Print Queue Server, NT Workstation, Potential Browser, Master Browser
 8 65.555281   my_ip                 XXX.XXX.255.255       BROWSER  Domain/Workgroup Announcement MY, NT Workstation, Domain Enum
 9 352.692192  0.0.0.0               255.255.255.255       DHCP     DHCP Discover - Transaction ID 0xa23d42a4
10 356.692376  0.0.0.0               255.255.255.255       DHCP     DHCP Discover - Transaction ID 0xa23d42a4
11 364.692421  0.0.0.0               255.255.255.255       DHCP     DHCP Discover - Transaction ID 0xa23d42a4
12 381.692442  0.0.0.0               255.255.255.255       DHCP     DHCP Discover - Transaction ID 0xa23d42a4
13 665.557507  my_ip                 XXX.XXX.255.255       BROWSER  Domain/Workgroup Announcement MY, NT Workstation, Domain Enum
14 686.724951  0.0.0.0               255.255.255.255       DHCP     DHCP Discover - Transaction ID 0xbe3a7bdb
15 691.724307  0.0.0.0               255.255.255.255       DHCP     DHCP Discover - Transaction ID 0xbe3a7bdb
16 698.724276  0.0.0.0               255.255.255.255       DHCP     DHCP Discover - Transaction ID 0xbe3a7bdb
17 715.724291  0.0.0.0               255.255.255.255       DHCP     DHCP Discover - Transaction ID 0xbe3a7bdb
18 783.295682  my_ip                 XXX.XXX.255.255       BROWSER  Local Master Announcement MYLAPTOP, Workstation, Server, Print Queue Server, NT Workstation, Potential Browser, Master Browser
19 908.920831  my_ip                 XXX.XXX.255.255       BROWSER  Get Backup List Request
20 908.920940  my_ip                 XXX.XXX.255.255       NBNS     Name query NB MY<1b>

3 个答案:

答案 0 :(得分:2)

如果您的计算机正在广播DHCP数据包,那是因为它需要DHCP服务器来获取地址。 正在寻找您的设备。您是否将计算机从主网络上取下并将其与设备挂在专用网络上?

您的计算机对您的嵌入式设备一无所知,也不会尝试与其建立连接。您需要做的第一件事是决定连接将做什么,然后编写或获取软件来创建连接。通常,嵌入式设备将创建服务器套接字并等待客户端(您的计算机)连接到它。 Telnet是客户端/服务器tcp连接的一个示例。

从您的帖子中可以明显看出,您不确定嵌入式设备的功能。您需要详细说明嵌入式设备及其运行方式。

答案 1 :(得分:0)

DHCP发现”表示您的PC正在向连接到以太网链路的任何设备询问其可以使用的IP地址。显然,您的设备不是DHCP服务器。相反,作为第一步,您应该分配您的电脑和设备static IP addresses,最好是从private IP ranges分配192.168.x.x.

如果您的设备有效IP-stack,则应该回复pings

您可以忽略BROWSER and NBNS packets。这就是Windows试图与另一个Windows交谈。

更正:目前还不完全清楚,哪个设备广播DHCP Discover,它最有可能是你的PC,但它也可能是设备(如果它有内置的DHCP客户端),或者是其他任何设备。相同的以太网链路您需要在Wireshark转储中包含MAC Adresses以确保。

答案 2 :(得分:0)

看起来正在发生的事情是您的设备正在尝试从DHCP服务器获取IP号,但没有DHCP服务器响应。

编辑:我说这是设备,因为如果我正在读取跟踪权限,那么您的计算机已经有了一个IP号码。查看底层以太网帧可能会有所帮助 - 我相信Wireshark可以帮助您实现这一目标。