我有一个 SoC 设备(例如:Raspberry Pi)和一台笔记本电脑。我想在我的机器和 Pi 之间使用“交叉”电缆通过直接电缆以太网创建链接,这样我就可以使用 SSH 连接到它。
Raspberry Pi 是无头的,我无法选择将其插入网络,或插入键盘来更改配置。所以我无法在 Raspberry Pi 上设置手动 IP,也无法通过路由器为其分配 IP。
默认情况下,Raspberry Pi 在以太网端口上寻找 DHCP 服务器。我认为我需要的是在该接口上设置一个临时 DHCP 服务器,一些指导会很有用,或者还有其他我没有想到的解决方案吗?
答案1
如果不存在 dhcp,它将获得 169.254.0.0/16 范围内的 IP。要获取实际的 IP 地址,您可以在 cmd windows 上尝试 arp -a 或使用某些网络扫描工具来获取该范围内的所有活动主机(您和 pi 本身)。
确保将您的网络接口配置为获取 dhcp IP,而不是静态 IP。
答案2
任何 DHCP 服务器都可以。只需确保它仅在与 Raspberry Pi 的接口上监听即可。如果您开始搞乱本地网络上的 DHCP 设置,您的系统管理员和本地网络上的其他用户将会很生气。
您可以使用域名解析,它在大多数 Linux 发行版中都可用并且易于设置。在 中/etc/dnsmasq.conf
,输入以下行:
interface=eth0
dhcp-range=10.13.0.2,10.13.0.2
其中eth0
是笔记本电脑有线以太网接口的名称(运行/sbin/ifconfig -a
以列出所有可用接口)。如果您的本地网络已使用 10.13.0.2,请将其替换为其他 IP 地址。重新启动 dnsmasq 并插入电缆。几秒钟后,您应该能够使用 来连接到 Pi ssh 10.13.0.2
。
如果您想通过笔记本电脑让 Pi 访问互联网,请设置 NAT。假设您的笔记本电脑通过网络接口访问互联网wlan0
:
echo 1 >/proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -i eth0 -o wlan0 -j MASQUERADE