如何用一根网线和树莓建立通信

499 views
Skip to first unread message

包乾

unread,
Sep 3, 2017, 1:28:40 AM9/3/17
to sh...@googlegroups.com
RT,已经抱持了很多年的疑问了T_T

假设我现在有一台树莓,已经设置了开机启动ssh服务;另外一边有一台linux主机。现在我想要不通过路由,直接用一根网线来连接这两者并且从主机上ssh登录到树莓。
我的做法是把二者物理连接以后,在主机上执行
# arp -e
我希望可以扫描到树莓,但是结果却出来一大堆不明的ip和mac地址,里面并没有我的树莓(这是为啥?)。

然后我试图从主机上用dhcpd来给树莓分配ip地址。启动以后我在dhcpd的日志/var/lib/dhcpd/dhcpd.leases里面看到有树莓的记录,有成功分配ip,但是当我试图ping这个ip,却仍然ping不通。最后我发现,如果我在树莓端操作启动dhcpcd客户端以后就可以通信了。

但是这样等于我还是需要键盘和屏幕去直接操作树莓端才可以建立连接,有没有办法可以一根网线直接建立连接的??求大神指点迷津。


Jerry L

unread,
Sep 3, 2017, 1:42:22 AM9/3/17
to sh...@googlegroups.com

--
-- You received this message because you are subscribed to the Google Groups Shanghai Linux User Group group. To post to this group, send email to sh...@googlegroups.com. To unsubscribe from this group, send email to shlug+unsubscribe@googlegroups.com. For more options, visit this group at https://groups.google.com/d/forum/shlug?hl=zh-CN
---
您收到此邮件是因为您订阅了Google网上论坛上的“Shanghai Linux User Group”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到shlug+unsubscribe@googlegroups.com
要查看更多选项,请访问https://groups.google.com/d/optout

包乾

unread,
Sep 3, 2017, 1:53:02 AM9/3/17
to sh...@googlegroups.com
谢谢但是他所描述的情况和我不太一样。

1.我的主机是gentoo不是ubuntu,我没有network manager,我不知道Change IpV4 settings to "Share to other computers"是实现了什么机制。

2.他说用以下命令寻找自己的broadcast地址,但是这条命令在我的主机上没用
$/sbin/ifconfig eth1 | grep "Bcast" | awk -F: '{print $3}' | awk '{print $1}'
我的ifconfig显示如下信息

enp0s25: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 3c:97:0e:ce:a1:bd  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 20  memory 0xf5300000-f5320000  

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1  (Local Loopback)
        RX packets 2504  bytes 190400 (185.9 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 2504  bytes 190400 (185.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

3.最后他说用nmap来寻找树莓的ip地址,但是我觉得这是他已经在上面的操作里给树莓分配好了ip地址,而我不知道要如何分配地址。

下面还有一些盖楼的,有写在windows上怎么实现的教程,但是也没有我想要的信息。

依云

unread,
Sep 3, 2017, 3:05:36 AM9/3/17
to sh...@googlegroups.com
我不知道你是怎么搞的,按说没有问题。我当年是这么搞的(我连网线都没有……):

树莓派上,USB 网卡插上,驱动装好。自动无线连接设置好。(我装的是 Arch,
用的 netctl-auto。)

电脑上启动 hostapd 和 dnsmasq(DHCP 服务)。

然后树莓派加电,在电脑的系统日志等着看树莓派连过来,得到 IP。然后 ssh 过
去就好了(我有事先放好 ssh key)。

当然做的过程中遇到了一些问题(找不到驱动啦什么的),拔下SD卡插电脑上看日
志(为此我还吐槽了 systemd 日志没法按写入顺序看)。

----

你们这些人啊,为什么总是说「ping 不通」却不说实际情况呢?你们去医院看病
时只说身体不舒服却不说是疼是痒么?

有好几种可能啊,比如网线不通、路由配置不对、IP 地址不对等。

--
Best regards,
lilydjwg

Linux Vim Python 我的博客:
https://blog.lilydjwg.me/
--
A: Because it obfuscates the reading.
Q: Why is top posting so bad?

包乾

unread,
Sep 3, 2017, 3:16:51 AM9/3/17
to sh...@googlegroups.com
好吧,关于为什么只说不舒服的问题,因为我也只知道"ping不通"这个事实(然后所以ssh也不通),实际情况还有什么?因为不知道所以才没说。。。

所以你是给树莓打开了netctl-auto,然后用笔记本发射无线是吗。我现在觉得可能是因为我的树莓上没有开这个所谓的自动连接(我猜是dhcpcd服务?)所以我的笔记本是配发了ip,但是树莓并没有接受?

再实验一下。。

--
-- You received this message because you are subscribed to the Google Groups Shanghai Linux User Group group. To post to this group, send email to sh...@googlegroups.com. To unsubscribe from this group, send email to shlug+unsubscribe@googlegroups.com. For more options, visit this group at https://groups.google.com/d/forum/shlug?hl=zh-CN
---
您收到此邮件是因为您订阅了 Google 网上论坛的“Shanghai Linux User Group”群组。

依云

unread,
Sep 3, 2017, 6:18:58 AM9/3/17
to sh...@googlegroups.com
On Sun, Sep 03, 2017 at 04:16:06PM +0900, 包乾 wrote:
> 好吧,关于为什么只说不舒服的问题,因为我也只知道"ping不通"这个事实(然后所以ssh也不通),实际情况还有什么?因为不知道所以才没说。。。

一直丢包,什么都不显示,这叫 ping 不通。直接就报错了,也叫 ping 不通。还
可能 ARP 丢包,等一会儿才出来报错信息说 host unreachable。如果你 ping 的
是域名,还可能等一会儿得到 unknown host 的报错。

出问题时,你应该说明你看到的现象(显示了什么,或者什么都没有显示),而不
是你自己的结论(通不通、行不行、成功还是失败)。

> 所以你是给树莓打开了netctl-auto,然后用笔记本发射无线是吗。我现在觉得可能是因为我的树莓上没有开这个所谓的自动连接(我猜是dhcpcd服务?)所以我的笔记本是配发了ip,但是树莓并没有接受?

对。我在SD卡上配置好了服务再插进去的。你使用 DHCP 的话,一端配置服务端程
序,另一端要启动客户端,dhcpcd 或者 dhclient。DHCP 是由客户端发起请求的,
所以你说的是你在配置文件里写了给树莓派哪个 IP,而不是(从日志)看到服务
端分配了哪个 IP 么?

> 再实验一下。。

Yiling Cao

unread,
Sep 3, 2017, 6:53:56 AM9/3/17
to sh...@googlegroups.com
就两个静态地址不就好了?


--
-- You received this message because you are subscribed to the Google Groups Shanghai Linux User Group group. To post to this group, send email to sh...@googlegroups.com. To unsubscribe from this group, send email to shlug+unsubscribe@googlegroups.com. For more options, visit this group at https://groups.google.com/d/forum/shlug?hl=zh-CN
---
您收到此邮件是因为您订阅了 Google 网上论坛的“Shanghai Linux User Group”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到shlug+unsubscribe@googlegroups.com
要查看更多选项,请访问 https://groups.google.com/d/optout

包乾

unread,
Sep 3, 2017, 8:17:49 AM9/3/17
to sh...@googlegroups.com
> 出问题时,你应该说明你看到的现象(显示了什么,或者什么都没有显示),而不
是你自己的结论(通不通、行不行、成功还是失败)。

多谢指点。我现在得到的ping结果是:
# ping 192.168.2.2
PING 192.168.2.2 (192.168.2.2) 56(84) bytes of data.
From 192.168.2.1 icmp_seq=1 Destination Host Unreachable
From 192.168.2.1 icmp_seq=2 Destination Host Unreachable
From 192.168.2.1 icmp_seq=3 Destination Host Unreachable
...

我用ip address add 192.168.2.1 dev enp0s25给自己主机的有线网卡指定了地址192.168.2.1,然后在主机的dhcpd服务器设置文件/etc/dhcp/dhcpd.conf里面设置了发放这个网段的地址:
option domain-name-servers 8.8.8.8, 8.8.4.4;
option subnet-mask 255.255.255.0;
option routers 192.168.2.1;
subnet 192.168.2.0 netmask 255.255.255.0 {
  range 192.168.2.2 192.168.2.10;
}
然后我看到日志文件/var/lib/dhcp/dhcpd.leases里面有如下信息:
# The format of this file is documented in the dhcpd.leases(5) manual page.
# This lease file was written by isc-dhcp-4.3.5 Gentoo-r0

# authoring-byte-order entry is generated, DO NOT DELETE
authoring-byte-order little-endian;

lease 192.168.2.2 {
  starts 0 2017/09/03 11:44:57;
  ends 0 2017/09/03 23:44:57;
  tstp 0 2017/09/03 23:44:57;
  cltt 0 2017/09/03 11:44:57;
  binding state active;
  next binding state free;
  rewind binding state free;
  hardware ethernet b8:27:eb:8d:4a:10;
  uid "\001\270'\353\215J\020";
  set vendor-class-identifier = "dhcpcd-6.10.1:Linux-4.9.41+:armv6l:BCM2835";
  client-hostname "raspberrypi";
}
server-duid "\000\001\000\001!>\251\343<\227\016\316\241\275";

这里有个现象,做实验时树莓接着键盘屏幕,我去那边用ip a查看IP时,发现树莓并没有被设成这个IP,但是dhcpcd服务是启动着的。

另外,我的主机平时用的无线interface用的网段是192.168.11.0/24,为了避免routing混乱?我在做上面的实验时都把无线interface关掉了(ip link set INTERFACE down)。

如果有什么需要补充的细节我再去查找。。

依云

unread,
Sep 3, 2017, 9:40:34 AM9/3/17
to sh...@googlegroups.com
你的无线的网段和它不冲突。看来因为未知的原因 dhcpcd 获取到的 IP 没有分配
到网卡上。(第一次遇见这种情况,难道是还有其它网络管理软件,和 dhcpcd 冲
突了?)

既然你都接键盘屏幕了,你试试静态分配一个 IP 上去呢?

ip link set xxx up
ip addr add 192.168.2.2/24 dev xxx

包乾

unread,
Sep 3, 2017, 10:30:50 AM9/3/17
to sh...@googlegroups.com
你的无线的网段和它不冲突。看来因为未知的原因 dhcpcd 获取到的 IP 没有分配
到网卡上。(第一次遇见这种情况,难道是还有其它网络管理软件,和 dhcpcd 冲
突了?)

多谢大神点拨,问题已经基本解决。好像是这样,因为我操作的时候是树莓和笔记本都已经启动的状态,然后网线连接着,我在主机上各种调dhcpd.conf,然后反复重启dhcpd,我以为这样新的IP就被树莓收到了。但是实验几次以后我发现可能树莓上的dhcpcd只有在启动的时候才自动请求一次IP,那一次没有请求到正确的IP的话,之后无论我怎样在主机上重启dhcpd都是不会被树莓收到的。所以我后来在主机上把主机的ip和dhcpd都设置好以后,最后启动树莓,IP就成功被收到了。不知道这样理解对了吗?

另外,我还是有一个不理解的地方,假设我现在dhcp等的设置都没有完成,树莓还没有可用的IP,但是网线已经连接。这个时候我在主机上 arp -e 为什么看不到树莓的mac地址呢?arp必须要有可用的IP才成立的吗?




包乾

unread,
Sep 3, 2017, 10:35:56 AM9/3/17
to sh...@googlegroups.com
就两个静态地址不就好了?

给树莓设IP不用键盘屏幕可以做到吗?

用键盘屏幕是可以很简单给树莓设一个,但是我想在最大限度不触碰树莓的情况下完成连接。很多带网卡的设备根本就没有键盘屏幕接口那就傻了。



您收到此邮件是因为您订阅了Google网上论坛上的“Shanghai Linux User Group”群组。

蒲肖肖

unread,
Sep 3, 2017, 11:22:26 AM9/3/17
to Shanghai Linux User Group
当然可以,我也有个 headless 设备,为了确保 dhcp 出问题时仍能连接,我写了个定时脚本给 eth0 设置一个固定的 IP 地址,只需要两个命令 ip link set up dev eth0, ip addr add 10.0.0.1/24 dev eth0

在 2017年9月3日星期日 UTC+8下午10:35:56,hotsaucesjtu写道:

依云

unread,
Sep 3, 2017, 10:47:38 PM9/3/17
to sh...@googlegroups.com
On Sun, Sep 03, 2017 at 11:30:05PM +0900, 包乾 wrote:
> > 你的无线的网段和它不冲突。看来因为未知的原因 dhcpcd 获取到的 IP 没有分配
> 到网卡上。(第一次遇见这种情况,难道是还有其它网络管理软件,和 dhcpcd 冲
> 突了?)
>
> 多谢大神点拨,问题已经基本解决。好像是这样,因为我操作的时候是树莓和笔记本都已经启动的状态,然后网线连接着,我在主机上各种调dhcpd.conf,然后反复重启dhcpd,我以为这样新的IP就被树莓收到了。但是实验几次以后我发现可能树莓上的dhcpcd只有在启动的时候才自动请求一次IP,那一次没有请求到正确的IP的话,之后无论我怎样在主机上重启dhcpd都是不会被树莓收到的。所以我后来在主机上把主机的ip和dhcpd都设置好以后,最后启动树莓,IP就成功被收到了。不知道这样理解对了吗?

对。dhcpcd 启动时请求一次,没拿到IP它就报错退出了。

> 另外,我还是有一个不理解的地方,假设我现在dhcp等的设置都没有完成,树莓还没有可用的IP,但是网线已经连接。这个时候我在主机上 arp -e
> 为什么看不到树莓的mac地址呢?arp必须要有可用的IP才成立的吗?

arp -e 那个应该是通信过才会出现的。你也可以进行 ARP 扫描,但是前提是知道
对方的 IP,因为 ARP 就是问谁的 IP 是 xxx 啊。

包乾

unread,
Sep 4, 2017, 7:24:22 PM9/4/17
to sh...@googlegroups.com
arp -e 那个应该是通信过才会出现的。你也可以进行 ARP 扫描,但是前提是知道
对方的 IP,因为 ARP 就是问谁的 IP 是 xxx 啊。

最后一个问题,像我之前dhcpd分配了IP但是dhcpcd没有接收的情况,要怎么侦测到这个问题呢?
dhcp的服务器端和客户端之间都是单向工作,没有互相情况确认的机制的吗?(像TCP包一样的确认机制)


包乾

unread,
Sep 4, 2017, 7:28:24 PM9/4/17
to sh...@googlegroups.com
> 当然可以,我也有个 headless 设备,为了确保 dhcp 出问题时仍能连接,我写了个定时脚本给 eth0 设置一个固定的 IP 地址,只需要两个命令 ip link set up dev eth0, ip addr add 10.0.0.1/24 dev eth0

但是你是怎么把脚本写进这个设备的呢。。在还没有通信,也没有直接操作这个设备的情况下?

liyaoshi

unread,
Sep 4, 2017, 9:44:58 PM9/4/17
to sh...@googlegroups.com
说实话,看到连话多说不清楚的,我不太爱搭理
起码你要知道,你想要做什么吧,你不用整那些专有名词,你只需要说你要达到目的就行
因为我的感觉,你压根不知道那些专有名词到底是啥意思,只在那里胡掰

Stephen Zhang

unread,
Sep 4, 2017, 10:50:57 PM9/4/17
to sh...@googlegroups.com
2017-09-05 7:23 GMT+08:00 包乾 <houke...@gmail.com>:
arp -e 那个应该是通信过才会出现的。你也可以进行 ARP 扫描,但是前提是知道
对方的 IP,因为 ARP 就是问谁的 IP 是 xxx 啊。

最后一个问题,像我之前dhcpd分配了IP但是dhcpcd没有接收的情况,要怎么侦测到这个问题呢?
dhcp的服务器端和客户端之间都是单向工作,没有互相情况确认的机制的吗?(像TCP包一样的确认机制)

​DHCP协议的流程大概是这样的:

* 客户端启动后,广播一条 DHCP REQUEST 消息,说我想要一个IP,谁给我分配一个
* 服务端收到广播后,检查预设的IP池里是否有空闲IP,有空闲IP,就回复客户端说,你可以用这个IP(当然还会做其他检查,比如是否要给这个客户端回复IP、是否给这个客户端回复固定的IP、是否需要推送其他信息等等,这里不展开)
* 客户端收到回复后,会再次广播,说我采纳了这个IP。这次广播的目的是,因为网络中可能有多个DHCP服务器,这样其他DHCP服务器就可以知道自己先前提供的IP是否被采纳,如果没有被采纳,那这个IP仍然是空闲的。

除上述流程外,没有其他通信。服务端返回IP时,还会提供一个租期时间,要求客户端在到期前来续租。在租期内,服务端会认为这个IP始终被占用,而不管这个IP是否真的有机器在用(它也没办法知道)。租约到期后,如果客户端还不来续约,服务端就认为这个IP已经空闲了,可以分配给其他人。

从流程中可以看到,就分配IP的过程而言,dhcpcd跟dhcpd是有相互确认的。只不过在租约到期前,对方发生了什么事,就完全不关心了。比如你客户端主机重启了,重启后没有启动dhcpcd,服务端是完全不关心的。

DHCP协议只是一个协商自动获取可用IP的协议,但这个协议并不关心被分配的IP是否真的被使用。假设我是一台机器,我运行dhcpcd进程获取到一个IP地址,之后我是否使用这个IP地址,是我自己的事情。正常情况下,dhcpcd获取到IP地址后,会把获取到的IP配置到iface上,如果什么地方配置有误,也可能会导致这个IP没有被配置到iface上,dhcp服务端是不管这事的。

Stephen Zhang

unread,
Sep 4, 2017, 10:58:00 PM9/4/17
to sh...@googlegroups.com
2017-09-05 7:27 GMT+08:00 包乾 <houke...@gmail.com>:
> 当然可以,我也有个 headless 设备,为了确保 dhcp 出问题时仍能连接,我写了个定时脚本给 eth0 设置一个固定的 IP 地址,只需要两个命令 ip link set up dev eth0, ip addr add 10.0.0.1/24 dev eth0

但是你是怎么把脚本写进这个设备的呢。。在还没有通信,也没有直接操作这个设备的情况下?

​我觉得你这个恢复太草率了,没有去理解人家的意思。

我对gentoo不熟,我就以debian为例,给树莓派灌装万系统后,你的场景下,可以做如下设置(interfaces 文件):

auto eth0
iface eth0 inet dhcp
  up ip addr add 10.0.0.1/24 dev $IFACE

这样,ifup eth0之后(系统启动会被自动up),无论dhcp是否获取到IP地址,eth0上都会有 10.0.0.1/24 这个IP。你插一根网线上去,网线另一端的设备随便设置一个10.0.0.0/24网段中的另一个IP,就可以跟 10.0.0.1通信了。

当然,不写interfaces文件也行,也可以写一个脚本在启动时干这个事情。如果你的系统中有一些其他任务,可能会时不时的重新配置eth0,导致上面手动配置的IP没了,那就可以像楼上说的,写一个定时脚本,时不时的设置一下,确保这个eth0上有 10.0.0.1 这个IP地址。

Stephen Zhang

unread,
Sep 4, 2017, 11:30:31 PM9/4/17
to sh...@googlegroups.com
简单地科普一些基础的网络知识,我猜测你可能对有一些方法不是十分理解,希望这些内容能帮助你理解。也欢迎各路大牛指出我可能存在的错误。

“给网卡设置IP”这个操作,究竟干了啥?

在不太旧的Linux系统发行版中,一般都安装了 iproute2 这个包,这个包里提供了 ip 这个命令,我们可以方便的用 ip 这个命令来给一个网卡设置一个 IP:

ip addr add 1.2.3.4/24 dev eth0

设置一个IP,大概干了这几件事:

* 如果网络中有人用ARP问,谁在用 1.2.3.4 这个IP,本机就会回复“我有,我的mac地址是xxx”
* 当收到一个包,并且这个包的目的IP是1.2.3.4时,内核会认为这个包是发给自己的,于是就会转发给上层应用。(如果收到一个包,目的IP是4.3.2.1,内核会认为这个包不是给自己的,于是走转发的流程)
* 会增加一系列局域网路由,比如知道 1.2.3.0/24 这个网段跟自己是在一个二层网络中的,如果本机要访问 1.2.3.5,网络栈判断这个IP跟自己在同一个网络中,就会用ARP协议问,谁在用 1.2.3.5 这个IP,如果这个机器存在并且回复了自己的mac地址,内核就把把包发给这个mac地址。如果本机要访问 5.4.3.2,内核发现这个地址不在同一个网络中,就会转发给配置的网关,让网关负责转发。如果没有配置网关,那内核就不知道如何转发这个包,就会丢弃,并给上层应用回复 no route to host。

所以,其实一个网卡上可以配置许多个地址,比如:

ip addr add 1.2.3.4/24 dev eth0
ip addr add 1.2.3.6/24 dev eth0
ip addr add 9.8.7.6/30 dev eth0
...

对于每一个IP,都会有前面列出来的这些效果,比如收到一个包,目的地是 9.8.7.6,会认为这是自己的地址,就会转发给上层应用。当然,这个包是怎么被发到这台机器的,这就由外部环境决定了。

在Linux中,你可以随时给一个存在的 iface 设置IP,无论这个iface当时的状态是否是up的,无论这个iface对应的物理网卡是否接了网线,网线对段是否接了设备、接了什么设备。设置到一个iface上的IP,在两种情况下会“丢失”:

* 利用ip命令删除: ip addr del 1.2.3.4/24 dev eth0
* iface 被删除:ip link del eth0
(当然,以上命令未必是人执行的,可能是一些程序调用的,也可能不是调用ip命令,而是用netlink协议直接跟内核通信操作的,ip命令实际上是对netlink协议的一个封装,方便命令行使用。)

结合你的场景,你可以有这些方案:

1、 直接给 eth0 配置一个固定IP,外面有设备跟它相连时(直连或者通过交换机连),外部设备设置一个同网段的IP,就可以互相访问

2、也许你的场景下会觉得这个方案不够灵活,比如有时候你希望树莓派能直接连到一个路由器上,并且连上之后就能自动访问外网,无需登陆上去额外配置。那可以配置 eth0 自动获取IP(也就是启动一个dhcpcd,dhcpcd利用DHCP协议获取IP,获取到IP后会调用 ip addr 命令来把获取到的IP设置到 eth0 上),同时,你也手动给 eth0 配置一个固定的IP。这也就是我上一封邮件中给出的方案。

我猜测你可能不太了解的是,

* 一个 iface 其实可以配置多个 IP 地址
* 给 iface 配置地址时,并不需要网线插着(因此你可以在开机脚本中、或者在crontab中、或者其他任何时机执行 ip addr add $some-address/$cidr dev eth0,而不必是插了网线之后才能设置)
* DHCP协议只是一个在内网中协商自动分配IP地址的协议,dhcpcd做的事情,包括不限于利用DHCP协议协商获取IP、把IP地址设置到iface上、配置系统路由、触发其他hook脚本等等。由于DHCP协议本身是在网络中进行的,因此只有插上网线才能工作,不过dhcpcd进程本身的运行不依赖于外部环境。

不知道这样的解释,是否足以解决你的疑惑。

lilydjwg

unread,
Sep 4, 2017, 11:47:24 PM9/4/17
to sh...@googlegroups.com
没有对应路由项是回 network unreachable 吧。no route to host 是最后一跳路由器 arp 找不到目标时回复的。

--

Stephen Zhang

unread,
Sep 5, 2017, 12:17:15 AM9/5/17
to sh...@googlegroups.com
2017-09-05 11:47 GMT+08:00 lilydjwg <lily...@gmail.com>:
没有对应路由项是回 network unreachable 吧。no route to host 是最后一跳路由器 arp 找不到目标时回复的。

​哦,对的,我大意了。写的时候没有再实际试一下,一些记忆就串了。​

包乾

unread,
Sep 5, 2017, 12:20:37 AM9/5/17
to sh...@googlegroups.com
我觉得你这个恢复太草率了,没有去理解人家的意思。

非常感谢Stephen的详细解释,我学到了很多东西!但是我还是要弱问一句,按照我的理解,你们所说的这个自动设置ip的脚本,是运行在树莓上的吧?eth0指的是树莓的有线interface对不对。
在还没不能和树莓建立任何通信的时候,如果手边也没有屏幕键盘接到树莓上来直接操作树莓,要怎么创建并让树莓运行这个脚本。。
再次感谢大量有用的信息

--

lilydjwg

unread,
Sep 5, 2017, 12:26:21 AM9/5/17
to sh...@googlegroups.com
你系统怎么装上去的,脚本就跟着一起弄上去嘛。

包乾

unread,
Sep 5, 2017, 10:40:34 AM9/5/17
to sh...@googlegroups.com
> 你系统怎么装上去的,脚本就跟着一起弄上去嘛。
> 简单地科普一些基础的网络知识,我猜测你可能对有一些方法不是十分理解,希望这些内容能帮助你理解。

感谢二位。Stephen所说的dhcp机制后来用tcpdump做了观察加深了理解。脚本也直接写进SD卡试过了。大满足!
下个问题可能想问依云怎么把自己的笔记本变成一个热点发射无线,不过那会是另外一个贴了。。。希望那个时候可以不被说胡掰,至少知道了怎么说“ping不通”。。。

liyaoshi

unread,
Sep 6, 2017, 12:37:38 AM9/6/17
to sh...@googlegroups.com
win7

@echo off
netsh wlan set hostednetwork  mode=allow ssid=win7ap key=1234567890
netsh wlan start hosted


依云

unread,
Sep 6, 2017, 9:59:53 AM9/6/17
to sh...@googlegroups.com
On Tue, Sep 05, 2017 at 11:39:48PM +0900, 包乾 wrote:
> > 你系统怎么装上去的,脚本就跟着一起弄上去嘛。
> > 简单地科普一些基础的网络知识,我猜测你可能对有一些方法不是十分理解,希望这些内容能帮助你理解。
>
> 感谢二位。Stephen所说的dhcp机制后来用tcpdump做了观察加深了理解。脚本也直接写进SD卡试过了。大满足!
> 下个问题可能想问依云怎么把自己的笔记本变成一个热点发射无线,不过那会是另外一个贴了。。。希望那个时候可以不被说胡掰,至少知道了怎么说“ping不通”。。。

https://blog.lilydjwg.me/2016/9/13/wi-fi-share-in-linux.205870.html

ip (网络配置) + hostapd (Wi-Fi) + dnsmasq (DNS, DHCP)

Xi Shen

unread,
Sep 10, 2017, 11:26:32 PM9/10/17
to sh...@googlegroups.com
gentoo上装一个network manager不难吧。。。我gentoo上一直用的是network manager。


后面有个回答的说了:

  1. Look up the broadcast address of the Ethernet connection (Laptop),

$/sbin/ifconfig eth1 | grep "Bcast" | awk -F: '{print $3}' | awk '{print $1}' 10.42.0.255

这个是需要你的网卡自己给自己分配一个地址的。也就是为什么你要先 "share to other computers“.

其实,我觉得你要做的,就是把自己的电脑配置成一台路由,然你的Pi连上来就可以了。可以看看 https://wiki.gentoo.org/wiki/Home_Router 。。。我自己没实践过 :D

 
--
-- You received this message because you are subscribed to the Google Groups Shanghai Linux User Group group. To post to this group, send email to sh...@googlegroups.com. To unsubscribe from this group, send email to shlug+un...@googlegroups.com. For more options, visit this group at https://groups.google.com/d/forum/shlug?hl=zh-CN

---
您收到此邮件是因为您订阅了Google网上论坛上的“Shanghai Linux User Group”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到shlug+un...@googlegroups.com
要查看更多选项,请访问https://groups.google.com/d/optout

--
-- You received this message because you are subscribed to the Google Groups Shanghai Linux User Group group. To post to this group, send email to sh...@googlegroups.com. To unsubscribe from this group, send email to shlug+un...@googlegroups.com. For more options, visit this group at https://groups.google.com/d/forum/shlug?hl=zh-CN

---
您收到此邮件是因为您订阅了Google网上论坛上的“Shanghai Linux User Group”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到shlug+un...@googlegroups.com
要查看更多选项,请访问https://groups.google.com/d/optout

--
-- You received this message because you are subscribed to the Google Groups Shanghai Linux User Group group. To post to this group, send email to sh...@googlegroups.com. To unsubscribe from this group, send email to shlug+un...@googlegroups.com. For more options, visit this group at https://groups.google.com/d/forum/shlug?hl=zh-CN

---
您收到此邮件是因为您订阅了Google网上论坛上的“Shanghai Linux User Group”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到shlug+un...@googlegroups.com
要查看更多选项,请访问https://groups.google.com/d/optout

Shell Xu

unread,
Sep 10, 2017, 11:45:13 PM9/10/17
to shlug
wifi sharing还有点难度,eth sharing我觉得是linux管理员的必备技能吧。。。

--
-- You received this message because you are subscribed to the Google Groups Shanghai Linux User Group group. To post to this group, send email to sh...@googlegroups.com. To unsubscribe from this group, send email to shlug+unsubscribe@googlegroups.com. For more options, visit this group at https://groups.google.com/d/forum/shlug?hl=zh-CN

---
您收到此邮件是因为您订阅了Google网上论坛上的“Shanghai Linux User Group”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到shlug+unsubscribe@googlegroups.com
要查看更多选项,请访问https://groups.google.com/d/optout

--
-- You received this message because you are subscribed to the Google Groups Shanghai Linux User Group group. To post to this group, send email to sh...@googlegroups.com. To unsubscribe from this group, send email to shlug+unsubscribe@googlegroups.com. For more options, visit this group at https://groups.google.com/d/forum/shlug?hl=zh-CN

---
您收到此邮件是因为您订阅了Google网上论坛上的“Shanghai Linux User Group”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到shlug+unsubscribe@googlegroups.com
要查看更多选项,请访问https://groups.google.com/d/optout

--
-- You received this message because you are subscribed to the Google Groups Shanghai Linux User Group group. To post to this group, send email to sh...@googlegroups.com. To unsubscribe from this group, send email to shlug+unsubscribe@googlegroups.com. For more options, visit this group at https://groups.google.com/d/forum/shlug?hl=zh-CN

---
您收到此邮件是因为您订阅了Google网上论坛上的“Shanghai Linux User Group”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到shlug+unsubscribe@googlegroups.com
要查看更多选项,请访问https://groups.google.com/d/optout

--
-- You received this message because you are subscribed to the Google Groups Shanghai Linux User Group group. To post to this group, send email to sh...@googlegroups.com. To unsubscribe from this group, send email to shlug+unsubscribe@googlegroups.com. For more options, visit this group at https://groups.google.com/d/forum/shlug?hl=zh-CN

---
您收到此邮件是因为您订阅了Google网上论坛上的“Shanghai Linux User Group”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到shlug+unsubscribe@googlegroups.com
要查看更多选项,请访问https://groups.google.com/d/optout



--
彼節者有間,而刀刃者無厚;以無厚入有間,恢恢乎其於游刃必有餘地矣。
blog: http://shell909090.org/
Reply all
Reply to author
Forward
0 new messages