您尚未登录。

#1 2013-12-25 15:59:45

zjz311
会员
注册时间: 2013-12-25
帖子: 8

[已解决]校园局域网不使用DHCP,自己添加 IP 地址失败

大家好!
问题是这样的:
我不想使用校园局域网 dhcp 得到的 ip ,想自己临时设置一个,但设置的结果总是失败。

相关信息如下:

1. 开机后通过 dhcp 得到的信息:

#  ip addr show enp9s0
2: enp9s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 60:eb:69:86:15:c7 brd ff:ff:ff:ff:ff:ff
    inet 10.16.11.156/24 brd 10.16.11.255 scope global enp9s0
       valid_lft forever preferred_lft forever
    inet6 2001:da8:d805:139:62eb:69ff:fe86:15c7/64 scope global dynamic 
       valid_lft 2591803sec preferred_lft 604603sec
    inet6 fe80::62eb:69ff:fe86:15c7/64 scope link 
       valid_lft forever preferred_lft forever
# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.16.11.1      0.0.0.0         UG    202    0        0 enp9s0
10.16.11.0      0.0.0.0         255.255.255.0   U     202    0        0 enp9s0
10.16.11.156    127.0.0.1       255.255.255.255 UGH   202    0        0 lo

2. 自己设置临时 ip 的步骤如下

1. # ps aux | grep dhcp | grep -v grep | awk '{print $2}' | xargs kill
2. # ip addr flush dev enp9s0
3. # ip addr add 10.16.11.157/24 brd 10.16.11.255 dev enp9s0
4. # route add -host 10.16.11.157 gw 127.0.0.1 dev lo
5. # route add default gw 10.16.11.1 dev enp9s0

此时的路由表:

# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.16.11.1      0.0.0.0         UG     0     0        0 enp9s0
10.16.11.0      0.0.0.0         255.255.255.0   U      0     0        0 enp9s0
10.16.11.157    127.0.0.1       255.255.255.255 UGH    0     0        0 lo

到此设置结束。

但是 ping 网关还有局域网其他电脑的时候总是 “Destination Host Unreachable”

这个问题让我纠结了很长时间,也仿照着 dhcp 时的路由表,设置时加上了 metric 参数,可以依然行不通。
运行 tcpdump 能监测到局域网其他机器的 arp,但自己机子的 arp 没有回应。

我这个设置错在哪里了?

最近编辑记录 zjz311 (2013-12-28 19:58:12)

离线

#2 2013-12-25 16:10:00

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,919
个人网站

Re: [已解决]校园局域网不使用DHCP,自己添加 IP 地址失败

route add -host 10.16.11.157 gw 127.0.0.1 dev lo 这个是在干嘛?

离线

#3 2013-12-25 16:14:57

zjz311
会员
注册时间: 2013-12-25
帖子: 8

Re: [已解决]校园局域网不使用DHCP,自己添加 IP 地址失败

百合仙子 说:

route add -host 10.16.11.157 gw 127.0.0.1 dev lo 这个是在干嘛?

依云:
这是仿照 dhcp 时的路由表添加的一项,其实不加也无所谓啦。

离线

#4 2013-12-25 16:45:27

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,919
个人网站

Re: [已解决]校园局域网不使用DHCP,自己添加 IP 地址失败

zjz311 说:
百合仙子 说:

route add -host 10.16.11.157 gw 127.0.0.1 dev lo 这个是在干嘛?

依云:
这是仿照 dhcp 时的路由表添加的一项,其实不加也无所谓啦。

哦,看到了。

你发个抓包结果出来看看?

离线

#5 2013-12-25 17:39:53

zjz311
会员
注册时间: 2013-12-25
帖子: 8

Re: [已解决]校园局域网不使用DHCP,自己添加 IP 地址失败

百合仙子 说:

哦,看到了。

你发个抓包结果出来看看?

依云:
这是抓包结果:

# tcpdump host 10.16.11.157 -i enp9s0
# ping -c 3 10.16.11.1
# ping -c 3 10.16.11.116
## 局域网有其他机器给我发送 arp 请求,我的 arp 应答好像发不出去
16:52:46.863946 ARP, Request who-has 10.16.11.1 tell arch, length 28
16:52:47.865158 ARP, Request who-has 10.16.11.1 tell arch, length 28
16:52:48.868497 ARP, Request who-has 10.16.11.1 tell arch, length 28
16:53:49.912978 ARP, Request who-has 10.16.11.116 tell arch, length 28
16:53:50.915156 ARP, Request who-has 10.16.11.116 tell arch, length 28
16:53:51.918489 ARP, Request who-has 10.16.11.116 tell arch, length 28
16:54:00.225615 ARP, Request who-has arch tell 10.16.11.49, length 46
16:54:00.225651 ARP, Reply arch is-at 60:eb:69:86:15:c7 (oui Unknown), length 28
16:54:00.989519 ARP, Request who-has arch tell 10.16.11.49, length 46
16:54:00.989537 ARP, Reply arch is-at 60:eb:69:86:15:c7 (oui Unknown), length 28
16:54:01.987956 ARP, Request who-has arch tell 10.16.11.49, length 46
16:54:01.987975 ARP, Reply arch is-at 60:eb:69:86:15:c7 (oui Unknown), length 28
16:55:27.244129 ARP, Request who-has arch tell 10.16.11.111, length 46
16:55:27.244159 ARP, Reply arch is-at 60:eb:69:86:15:c7 (oui Unknown), length 28
16:55:27.898932 ARP, Request who-has arch tell 10.16.11.111, length 46
16:55:27.898953 ARP, Reply arch is-at 60:eb:69:86:15:c7 (oui Unknown), length 28
16:55:28.897048 ARP, Request who-has arch tell 10.16.11.111, length 46
16:55:28.897072 ARP, Reply arch is-at 60:eb:69:86:15:c7 (oui Unknown), length 28
16:56:38.919031 ARP, Request who-has arch tell 10.16.11.120, length 46
16:56:38.919070 ARP, Reply arch is-at 60:eb:69:86:15:c7 (oui Unknown), length 28
16:56:39.870557 ARP, Request who-has arch tell 10.16.11.120, length 46
16:56:39.870567 ARP, Reply arch is-at 60:eb:69:86:15:c7 (oui Unknown), length 28
16:56:40.870750 ARP, Request who-has arch tell 10.16.11.120, length 46
16:56:40.870768 ARP, Reply arch is-at 60:eb:69:86:15:c7 (oui Unknown), length 28
16:56:43.991445 ARP, Request who-has arch tell 10.16.11.120, length 46
16:56:43.991463 ARP, Reply arch is-at 60:eb:69:86:15:c7 (oui Unknown), length 28
16:56:44.870983 ARP, Request who-has arch tell 10.16.11.120, length 46
16:56:44.870997 ARP, Reply arch is-at 60:eb:69:86:15:c7 (oui Unknown), length 28
16:56:45.091612 IP arch > 10.16.11.116: ICMP echo request, id 13257, seq 1, length 64
16:56:45.871026 ARP, Request who-has arch tell 10.16.11.120, length 46
16:56:45.871039 ARP, Reply arch is-at 60:eb:69:86:15:c7 (oui Unknown), length 28
16:56:46.098677 IP arch > 10.16.11.116: ICMP echo request, id 13257, seq 2, length 64
16:56:47.098524 IP arch > 10.16.11.116: ICMP echo request, id 13257, seq 3, length 64
16:56:49.064328 ARP, Request who-has arch tell 10.16.11.120, length 46
16:56:49.064357 ARP, Reply arch is-at 60:eb:69:86:15:c7 (oui Unknown), length 28
16:56:49.870284 ARP, Request who-has arch tell 10.16.11.120, length 46
16:56:49.870297 ARP, Reply arch is-at 60:eb:69:86:15:c7 (oui Unknown), length 28
16:56:50.870413 ARP, Request who-has arch tell 10.16.11.120, length 46
16:56:50.870433 ARP, Reply arch is-at 60:eb:69:86:15:c7 (oui Unknown), length 28
16:56:51.115131 ARP, Request who-has 10.16.11.116 tell arch, length 28
16:56:52.118464 ARP, Request who-has 10.16.11.116 tell arch, length 28
16:56:53.121819 ARP, Request who-has 10.16.11.116 tell arch, length 28
16:57:01.081874 ARP, Request who-has 10.16.11.1 tell arch, length 28
16:57:02.085129 ARP, Request who-has 10.16.11.1 tell arch, length 28
16:57:03.088468 ARP, Request who-has 10.16.11.1 tell arch, length 28

离线

#6 2013-12-25 18:27:29

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,919
个人网站

Re: [已解决]校园局域网不使用DHCP,自己添加 IP 地址失败

呃,你可以用 wireshark 抓包吗?然后保存,把文件发到这里 http://www.cloudshark.org/

离线

#7 2013-12-26 13:50:27

zjz311
会员
注册时间: 2013-12-25
帖子: 8

Re: [已解决]校园局域网不使用DHCP,自己添加 IP 地址失败

百合仙子 说:

呃,你可以用 wireshark 抓包吗?然后保存,把文件发到这里 http://www.cloudshark.org/

依云:
这是我临时更改 ip 抓包的信息(我的电脑名称 arch, 要更改的 ip 为 10.16.11.157)
临时更改 ip 的抓包 分别 ping 3次 10.16.11.1,  10.16.11.168

这是 dhcp 时的抓包
dhcp 抓包

最近编辑记录 zjz311 (2013-12-26 14:06:40)

离线

#8 2013-12-26 14:30:46

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,919
个人网站

Re: [已解决]校园局域网不使用DHCP,自己添加 IP 地址失败

是不是不允许使用静态 IP?为什么抓包里一个发送给你的数据包也没有?你的系统在找 10.16.11.156,很奇怪……

离线

#9 2013-12-26 14:52:39

zjz311
会员
注册时间: 2013-12-25
帖子: 8

Re: [已解决]校园局域网不使用DHCP,自己添加 IP 地址失败

百合仙子 说:

是不是不允许使用静态 IP?为什么抓包里一个发送给你的数据包也没有?你的系统在找 10.16.11.156,很奇怪……

10.16.11.156 是我 dhcp 的 ip, 不知道我换了 ip 后系统为什么还在找它。即使网关不允许静态 ip, 我应该也能 ping 通 局域网其他机子的 ip 吧, 但是 ping 不到。
我感觉是我电脑的 arp 发不出去,如果我在同学的电脑上抓包抓不到我机子的 arp 的话,会是哪些原因呢?我的路由表看着也没啥错的。

我在 windows 下也试了,自己设置 ip 地址失败。看样子不是设置的问题。不纠结了。

谢谢依云啊!

最近编辑记录 zjz311 (2013-12-26 15:53:11)

离线

页脚