树莓派ssh登录

121 views
Skip to first unread message

Roger Luo

unread,
Jul 10, 2014, 7:21:51 AM7/10/14
to ustc...@googlegroups.com
树莓派上基于Debian的raspbian系统在/etc/network/interfaces 设置静态IP之后用网线连接笔记本和树莓派就找不到树莓派了,也不能ping上设置的IP地址。

Xilin Sun

unread,
Jul 10, 2014, 8:22:30 AM7/10/14
to 科大LUG
On 10 July 2014 19:21, Roger Luo <rogerl...@gmail.com> wrote:
> 树莓派上基于Debian的raspbian系统在/etc/network/interfaces 设置静态IP之后用网线连接笔记本和树莓派就找不到树莓派了,也不能ping上设置的IP地址。


笔记本上是如何设置的?

如果环境中有无线网,推荐把树莓派连接到无线网。网卡参考: TP-Link TL-WN823N.

--
Xilin SUN
Department of Mechanical Engineering
The Hong Kong Polytechnic University
Tel: +852 9140 6662
About me: http://about.me/sxl

Bojie Li

unread,
Jul 10, 2014, 8:27:39 AM7/10/14
to USTC_LUG
笔记本上的有线网卡也要设置静态 IP,且与树莓派上的静态 IP 在同一子网内。比如树莓派上设置 192.168.0.1/24,笔记本上可以设置 192.168.0.2/24


On Thu, Jul 10, 2014 at 7:21 PM, Roger Luo <rogerl...@gmail.com> wrote:
树莓派上基于Debian的raspbian系统在/etc/network/interfaces 设置静态IP之后用网线连接笔记本和树莓派就找不到树莓派了,也不能ping上设置的IP地址。

--
-- 来自USTC LUG
请使用gmail订阅,不要灌水。
更多信息more info:http://groups.google.com/group/ustc_lug?hl=en?hl=en

---
You received this message because you are subscribed to the Google Groups "USTC_LUG" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ustc_lug+u...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

崔灏 (CUI Hao)

unread,
Jul 10, 2014, 8:31:37 AM7/10/14
to LUG@USTC
静态 IP 我之前反正是没设成功,然后也没深究。
后来用 NetworkManager 建立了个共享连接,树莓派那端就可以直接 dhcp 了。本质上就是用 dnsmasq 建了个 dhcp 服务器。
--
崔灏 / CUI Hao
Homepage: http://cuihao.tk/
Twitter: @cuihaoleo

Yifan Gao

unread,
Jul 10, 2014, 11:13:37 AM7/10/14
to ustc...@googlegroups.com

贴一下我的配置吧,使用的是raspbian系统:

auto lo
iface lo inet loopback
# iface eth0 inet dhcp
auto eth0
iface eth0 inet static
address     192.168.13.21
netmask     255.255.255.0
gateway     192.168.13.3
broadcast   192.168.13.255
dns-nameservers 202.38.64.56    202.38.64.17

allow-hotplug wlan0
iface wlan0 inet manual
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp

此配置在Raspberry Pi和Banana Pi上正常工作,其余分支版本没有测试。

注意raspbian配置的IP应与本机IP在同一网段,如果需要连接外网,gateway也需要正确配置,请酌情修改。

-- 
Yifan Gao

开启 2014年7月10日 at 下午7:28:41, Roger Luo (rogerl...@gmail.com) 写:

Bojie Li

unread,
Jul 10, 2014, 3:26:00 PM7/10/14
to USTC_LUG

如果想做到树莓派直连电脑和树莓派连局域网不用分别配置(毕竟,如果没有 HDMI 线和显示器,连不上网络就无法访问树莓派,也就无法修改网络配置),可以在树莓派和自己的电脑里分别写个 if-up 脚本,DHCP 超时之后,自己分配一个 link local(借用下 IPv6 的概念)的 IPv4 地址(169.254.x.x),微软和苹果的操作系统都是这么干的。

启用 DHCP 服务要小心,别连完树莓派之后忘了关就接到实验室或机房网络里了。在我司私设 DHCP 服务器是可能被炒鱿鱼的,而实验网络和公司网络难免不小心接到一起,所以我们在实验网络里都不敢用 DHCP,每台机器配个固定 IP,直接用 IP 定位主机,还省了 DNS。

静态 IP 如果没配成功的话,有可能是动态配置 IP 的服务在捣乱,比如 dhcpcd,NetworkManager,wicd。

Yifan Gao

unread,
Jul 10, 2014, 3:33:58 PM7/10/14
to ustc...@googlegroups.com

-- 
Yifan Gao

开启 2014年7月11日 at 上午3:26:00, Bojie Li (boj...@gmail.com) 写:

如果想做到树莓派直连电脑和树莓派连局域网不用分别配置(毕竟,如果没有 HDMI 线和显示器,连不上网络就无法访问树莓派,也就无法修改网络配置),可以在树莓派和自己的电脑里分别写个 if-up 脚本,DHCP 超时之后,自己分配一个 link local(借用下 IPv6 的概念)的 IPv4 地址(169.254.x.x),微软和苹果的操作系统都是这么干的。

启用 DHCP 服务要小心,别连完树莓派之后忘了关就接到实验室或机房网络里了。在我司私设 DHCP 服务器是可能被炒鱿鱼的,而实验网络和公司网络难免不小心接到一起,所以我们在实验网络里都不敢用 DHCP,每台机器配个固定 IP,直接用 IP 定位主机,还省了 DNS。

就没有什么方法可以屏蔽未授权的DHCP服务器么?比如在交换机或路由器上做包过滤?

感觉“炒鱿鱼”这种手段太没有技术含量了。。。。。

Roy Zhang

unread,
Jul 10, 2014, 9:41:10 PM7/10/14
to ustc...@googlegroups.com
看起来搞技术的人从来瞧不起搞管理的啊…(OT)

Zhang Cheng

unread,
Jul 10, 2014, 10:07:22 PM7/10/14
to USTC LUG

有些交换机是支持屏蔽非信任的dhcp回应的,但毕竟普通家用级的都不支持。而且不是所有的网管都会做这个配置。在比较小的环境里(比如一个实验室),网管更倾向于相信大家都是好人,以减少自己的工作量(其实大多数也是因为没有能力),只有在较大的网络里面(比如整个科大)才会做很复杂很严格的配置,而这些配置也仅能在学校能控制的设备范围内生效,在许多地方控制不到终端。

Cheng
(sent from a mobile device)

Zhang Cheng

unread,
Jul 10, 2014, 10:07:23 PM7/10/14
to USTC LUG

如果设备经常换网络环境,不如直接加一个网卡的alias(如eth0:0),绑上一个link local的ip,这样随时可以用,不用等超时,也不怕dhcp到一个不知道的ip。

Cheng
(sent from a mobile device)

Bojie Li

unread,
Jul 10, 2014, 10:30:33 PM7/10/14
to USTC_LUG

能过滤,但太麻烦,交换机厂商即使做了也属于附加功能。具体来说,可以在用户接入网络的交换机上丢弃用户发来的 DHCPOFFER 包,不过这需要应用层过滤,也需要管理员额外配置(允许来自哪个接口的 DHCPOFFER);只要有一台接入交换机没做这种配置,就有私设 DHCP 的可能。此外还有其他类型的局域网攻击,比如 ARP 欺骗,也得与 DHCP 联动,用应用层过滤才能阻止。还有防不胜防的,比如一台机器跟另一台机器设置成相同的 MAC,交换机怎么知道新来的 MAC 是原来的机器换了个物理端口,还是一台恶意机器(你可以说给原来的端口发个 ARP 请求确认一下,但太麻烦了……)

Bojie Li

unread,
Jul 10, 2014, 10:48:36 PM7/10/14
to USTC_LUG

嗯,这个主意不错,学习了。

Roger Luo

unread,
Jul 12, 2014, 9:49:34 AM7/12/14
to ustc...@googlegroups.com

学长不是很清楚gateway应该怎么配置?本机的IP怎么配置?也是在本机的interfaces里写吗?

Yifan Gao

unread,
Jul 12, 2014, 2:31:40 PM7/12/14
to ustc...@googlegroups.com
具体配哪个gateway依赖于你的网络环境,如果本机可以正常上网,那么你可以参照本机的配置来写interfaces。(前提是raspberryPi和本机在同一个物理网络中)
举例说:

本机:(windows下运行ipconfig/all;linux下ip地址通过ifconfig查看,网关通过netstat -nr查看,dns通过cat /etc/resolv.conf查看)PS:大家有没有简单方法?
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
dns 202.38.64.56 202.38.64.17

那么interfaces里可以写

address     192.168.1.101
netmask     255.255.255.0
gateway     192.168.1.1
broadcast   192.168.1.255
dns-nameservers 202.38.64.56    202.38.64.17

也就是说address写一个同网段没有被占用的ip。mask、gateway、DNS照抄,broadcast可选(如果你需要用到ip广播技术的应用,则需要设置)

然后在本机连接树莓派的ip地址(示例中是192.168.1.101)即可
-- 
Yifan Gao

开启 2014年7月12日 at 下午9:49:33, Roger Luo (rogerl...@gmail.com) 写:

Yifan Gao

unread,
Jul 12, 2014, 2:34:26 PM7/12/14
to ustc...@googlegroups.com
推荐你买一个TTL转USB的电路板,很便宜,很好用,这就不用这么折腾了
-- 
Yifan Gao

开启 2014年7月12日 at 下午9:49:33, Roger Luo (rogerl...@gmail.com) 写:

学长不是很清楚gateway应该怎么配置?本机的IP怎么配置?也是在本机的interfaces里写吗?

HaoXu

unread,
Jul 12, 2014, 5:55:11 PM7/12/14
to ustc...@googlegroups.com
那玩意不能X转发不幸福

发自我的 iPhone

Zitian Li

unread,
Jul 12, 2014, 5:55:24 PM7/12/14
to ustc...@googlegroups.com

用USB转TTL线速率怎么样?可以传文件吗?

Bojie Li

unread,
Jul 12, 2014, 7:19:22 PM7/12/14
to USTC_LUG

我觉得 Zhang Cheng 的方案很好,在树莓派的 /etc/network/interfaces 里添加
iface eth0:0 inet static
address 169.254.0.2
netmask 255.255.0.0
gateway 169.254.0.1
dns-nameservers 202.38.64.1 202.38.64.7

然后在电脑的 /etc/network/interfaces 里添加
iface eth0:0 inet static
address 169.254.0.1
netmask 255.255.0.0
up iptables -t nat -A POSTROUTING -s 169.254.0.0/16 ! -d 169.254.0.0/16 -j MASQUERADE
down iptables -t nat -D POSTROUTING -s 169.254.0.0/16 ! -d 169.254.0.0/16 -j MASQUERADE

还要修改 /etc/sysctl.conf
net.ipv4.ip_forwarding = 1
执行 sysctl -p 以重新载入配置。

把树莓派与电脑网线直连,连上之后就能用 169.254.0.2 访问树莓派了。电脑如果能无线上网的话,树莓派应该也就能上网了(比如在树莓派里 apt-get update)。

解释一下,这条 iptables 规则是在插入网线的时候生效,转发 169.254.0.0/16 来的数据包,也就是从树莓派来的数据包。网线连接外网时,一般不会有这样的数据包,规则也就不会被匹配上。网线拔掉的时候删除这条 iptables 规则(完全是洁癖)。之所以用 169.254.0.0/16 网段,是为了避免与局域网网段发生冲突,局域网一般是 10 或 (172.16 至 172.31) 或 192.168 开头的。注意电脑端的配置不要写 gateway,一台机器不论有多少块网卡,只能有一个 gateway,表示默认路由,也就是访问 Internet 的路径,我们不希望通过树莓派访问 Internet。

Bojie Li

unread,
Jul 12, 2014, 7:26:46 PM7/12/14
to USTC_LUG

在树莓派上用 X 不慢吗……

Yifan Gao

unread,
Jul 13, 2014, 11:08:00 AM7/13/14
to ustc...@googlegroups.com
只是一个tty终端,无法传文件。速率一般是115200
-- 
Yifan Gao

开启 2014年7月13日 at 上午5:55:23, Zitian Li (ztliz...@gmail.com) 写:

Yifan Gao

unread,
Jul 13, 2014, 11:12:15 AM7/13/14
to ustc...@googlegroups.com
这是用来第一步配置网络的,怎么会想到长期用TTL了。。。。
P.S. 话说 HDMI+Thunderbolt+VGA的转换器你放哪了?
-- 
Yifan Gao

开启 2014年7月13日 at 上午5:55:10, HaoXu (xuhao...@gmail.com) 写:

HaoXu

unread,
Jul 13, 2014, 7:38:44 PM7/13/14
to ustc...@googlegroups.com
呃…那个东西现在和你直线距离大概一万公里吧。你再亚马逊一个

发自我的 iPhone

HaoXu

unread,
Jul 13, 2014, 7:39:14 PM7/13/14
to ustc...@googlegroups.com
tty终端可以传文件

发自我的 iPhone

Yifan Gao

unread,
Jul 14, 2014, 2:13:19 AM7/14/14
to ustc...@googlegroups.com
求教
-- 
Yifan Gao

开启 2014年7月14日 at 上午7:39:13, HaoXu (xuhao...@gmail.com) 写:

Bojie Li

unread,
Jul 14, 2014, 9:07:31 AM7/14/14
to USTC_LUG
2014-07-13 3:55 GMT+08:00 Zitian Li <ztliz...@gmail.com>:

用USB转TTL线速率怎么样?可以传文件吗?

首先需要修改树莓派的 /etc/inittab,把 /dev/ttyS0 getty 那一行取消注释,树莓派启动时才会在串口上运行 getty,这时在电脑上用 minicom 就能登录树莓派的 console 了。

如果要传比较小的文件,最简单的办法是在电脑上 base64 <local-filename 得到 base64 编码的文件内容,复制到剪贴板,然后在 minicom 的远程终端里 base64 -d >remote-filename <<EOF,回车,粘贴剪贴板的内容,回车,EOF,回车,不出意外的话文件就保存在树莓派上了。

如果要传稍大的文件(太大的就算了,串口只有 115200 bit/s),可以用 kermit。在树莓派和电脑上都要安装 ckermit 包。kermit 是一个成熟的文件传输和远程终端协议,在网络不普及的年代是文件传输的事实标准,从国际空间站往地面传数据用的就是它。

如果你坚持要用 ssh,可以试一试 ser2net(只是听说过,没用过)把串口转换到网络上。不过,usbnet 可能是个更好的选择(USB 比串口快),Android 手机通过 USB 共享网络就是用的 usbnet。

Enjoy Raspberry Pi!
Reply all
Reply to author
Forward
0 new messages