我想配置一个 IP 摄像头,它位于我的树莓派的以太网端口(我通过 wifi 连接到它)。
我连接了相机,这就是我跑步时看到的ifconfig
eth0 Link encap:Ethernet HWaddr b8:27:eb:a2:10:08
inet addr:169.254.248.2 Bcast:169.254.255.255 Mask:255.255.0.0
inet6 addr: fe80::ce99:232c:964e:7070/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:5600 errors:0 dropped:0 overruns:0 frame:0
TX packets:27715 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3219770 (3.0 MiB) TX bytes:10481558 (9.9 MiB)
这意味着我的树莓派有IP地址169.254.248.2
。我尝试访问169.254.248.1
和扫描,nmap 169.254.0.0/16
但我看到的唯一主机是树莓派本身。
然后我在 eth0 上运行 tcpdump:
tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
03:13:53.963493 IP (tos 0x0, ttl 64, id 13074, offset 0, flags [none], proto UDP (17), length 368)
0.0.0.0.bootpc > 255.255.255.255.bootps: BOOTP/DHCP, Request from b8:27:eb:a2:10:08 (oui Unknown), length 340, xid 0x252200b7, secs 65535, Flags [none]
Client-Ethernet-Address b8:27:eb:a2:10:08 (oui Unknown)
Vendor-rfc1048 Extensions
Magic Cookie 0x63825363
DHCP-Message Option 53, length 1: Discover
Client-ID Option 61, length 7: ether b8:27:eb:a2:10:08
SLP-NA Option 80, length 0""
NOAUTO Option 116, length 1: Y
MSZ Option 57, length 2: 1500
Vendor-Class Option 60, length 44: "dhcpcd-6.7.1:Linux-4.9.48-v7+:armv7l:BCM2835"
Hostname Option 12, length 11: "raspberrypi"
T145 Option 145, length 1: 1
Parameter-Request Option 55, length 14:
Subnet-Mask, Classless-Static-Route, Static-Route, Default-Gateway
Domain-Name-Server, Hostname, Domain-Name, BR
NTP, Lease-Time, Server-ID, RN
RB, Option 119
看起来我的树莓派正试图为自己找到一个 IP。我没有听到摄像机发出任何声音。我不应该收到它的广播消息来尝试获取IP吗?
好的,所以我继续并安装https://help.ubuntu.com/community/isc-dhcp-server具有以下配置文件:
# Sample /etc/dhcpd.conf
# (add your comments here)
default-lease-time 600;
max-lease-time 7200;
option subnet-mask 255.255.255.0;
option broadcast-address 169.254.248.255;
option routers 169.254.248.254;
option domain-name "mydomain.example";
subnet 169.254.248.0 netmask 255.255.255.0 {
range 169.254.248.10 169.254.248.100;
}
它应该使相机的 dhcp 客户端请求地址并获取169.254.248.10
,对吧?
这些都不起作用,所以我开始记住关于这台相机的一些事情:
它们预先配置为在 192.168.1.x 上工作,并且具有固定IP(我不知道是什么)。
这是否意味着摄像机永远无法在我的以太网端口上工作,除非我将以太网地址设置在 192.168.1.x 范围内?
难道我不应该从摄像机接收广播消息吗,即使我位于不同的子网上并且即使其 IP 是固定的?我想我应该收到 ARP 广播消息,告知它在哪个 IP,类似的东西,对吗?然而当我这样做时我没有听到任何来自相机的声音tcpdump -i eth0
如果最后两个问题的答案是错误的,那么192.168.1.x
即使我的 wlan0 接口已经在该范围内工作,我是否可以使我的以太网端口在该范围内工作? (我的意思是,我至少可以以虚拟方式做到这一点,只是为了与相机对话吗?因为它是原始以太网,我可以假装 eth0 已打开,192.168.1.x
只是为了欺骗相机)。我问这个问题是因为我所做的都是远程的,我不能弄乱无线局域网配置,也不能将其放入不同的子网中。
答案1
如果没有集线器或交换机,您需要使用交叉电缆。您可以制作交叉电缆、制作带有交叉 RJ45 母头连接器的电缆、将 2 个 RJ45 连接器放在一起(2 端口集线器!)等。
一旦完成,自动寻址就可以工作,或者检查摄像机手册,它可能有一个默认的静态 IP 设置。
如果您知道 IP 在 192.168.1.x 子网中,请将您的 Pi 设置为该范围内的某个值,然后进行端口扫描或 ping 扫描子网。
ifconfig eth0 192.168.1.131 netmask 255.255.255.0