免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 14163 | 回复: 13
打印 上一主题 下一主题

能ping通,却不能traceroute通? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-09-20 10:10 |只看该作者 |倒序浏览
如题,详细见下面配置,只有一块网卡,虚拟出一个网卡,开启ip转发:

# ifconfig -a
lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000
pcn0: flags=1100843<UP,BROADCAST,RUNNING,MULTICAST,ROUTER,IPv4> mtu 1500 index 2
        inet 192.168.16.107 netmask ffffff00 broadcast 192.168.16.255
        ether 0:c:29:4f:e1:a6
pcn0:1: flags=1100843<UP,BROADCAST,RUNNING,MULTICAST,ROUTER,IPv4> mtu 1500 index 2
        inet 10.10.168.176 netmask ff000000 broadcast 10.255.255.255
#     
# ifconfig -a
lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000
bash-3.00# ifconfig -a
lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000
pcn0: flags=1100843<UP,BROADCAST,RUNNING,MULTICAST,ROUTER,IPv4> mtu 1500 index 2
        inet 192.168.16.107 netmask ffffff00 broadcast 192.168.16.255
        ether 0:c:29:4f:e1:a6
pcn0:1: flags=1100843<UP,BROADCAST,RUNNING,MULTICAST,ROUTER,IPv4> mtu 1500 index 2
        inet 10.10.168.176 netmask ff000000 broadcast 10.255.255.255
bash-3.00# ping -i pcn0:1 -s 192.168.16.1
PING 192.168.16.1: 56 data bytes
64 bytes from 192.168.16.1: icmp_seq=0. time=239. ms
64 bytes from 192.168.16.1: icmp_seq=1. time=169. ms
64 bytes from 192.168.16.1: icmp_seq=2. time=11.9 ms
64 bytes from 192.168.16.1: icmp_seq=3. time=2.17 ms
64 bytes from 192.168.16.1: icmp_seq=4. time=314. ms
64 bytes from 192.168.16.1: icmp_seq=5. time=76.3 ms
^C
----192.168.16.1 PING Statistics----
6 packets transmitted, 6 packets received, 0% packet loss
round-trip (ms)  min/avg/max/stddev = 2.17/135./314./1.3e+02
bash-3.00# traceroute -i pcn0:1 192.168.16.1
traceroute to 192.168.16.1 (192.168.16.1), 30 hops max, 40 byte packets
1  * * *
2  * * *
3  * * *
4  * * *
5  * * *
6 ^C
bash-3.00# ndd -get /dev/ip ip_forwarding
1
bash-3.00#

论坛徽章:
0
2 [报告]
发表于 2007-09-20 10:16 |只看该作者
不奇怪,Ping和traceroute虽然都是icmp报,可报文类型不同,目标主机可能拒绝响应icmp的traceroute报文,仅响应icmp的echo和echo_reply

论坛徽章:
0
3 [报告]
发表于 2007-09-20 10:25 |只看该作者
按照你的说法,那下面的情况又怎么解释呢?下面的情况说明远程主机是响应traceroute的报文的,这就是奇怪的地方。

bash-3.00# traceroute -i pcn0 192.168.16.1
traceroute to 192.168.16.1 (192.168.16.1), 30 hops max, 40 byte packets
1  192.168.16.1 (192.168.16.1)  0.000 ms  9.843 ms *
bash-3.00#

论坛徽章:
0
4 [报告]
发表于 2007-09-20 10:31 |只看该作者
一个机器分配俩IP时容易出现那样的问题,个人感觉traceroute源地址问题。加个-a看看

论坛徽章:
0
5 [报告]
发表于 2007-09-20 10:37 |只看该作者
traceroute -i pcn0:1 192.168.16.1 你得pcn0:1是10网段,基本上死也追不到192.168.16.1得,就只能用pcn0才行

ping -i pcn0:1 -s 192.168.16.1这个嘛,基本上不用管这个哪,

pcn0和192一个网段,本来就应该用ping -i pcn0 -s 192.168.16.1

LZ还是用规范做法吧。不要非得用不同网段得网卡去测试另一个接口得网络吧

[ 本帖最后由 yuhuohu 于 2007-9-20 10:39 编辑 ]

论坛徽章:
0
6 [报告]
发表于 2007-09-20 10:49 |只看该作者
其实我就是想试验ip转发的功能,看是否能在虚拟网络接口之间转发!

论坛徽章:
0
7 [报告]
发表于 2007-09-20 10:57 |只看该作者
yun,那不是这样子试验滴..

host1---------pcn0:1        solaris        pcn0--------------host2

host1 ping host2
or
host2 ping host1

论坛徽章:
0
8 [报告]
发表于 2007-09-20 11:08 |只看该作者
我明白,我这样做只是把问题简单化,要不然你怎么就敢肯定不是host1到solaris出问题了呢?现在的问题就是host1 ping不通host2,所以才会有这个想法,测试一下本机的两个网络接口能不能正常转发数据包,确定问题所在嘛!

论坛徽章:
0
9 [报告]
发表于 2007-09-20 11:14 |只看该作者

补充

我这样都通是不是表明我的ip转发没有问题呢,但是一旦把192。168。16。107(这个是我本机的ip)换成别的同一网段的机器就traceroute不通呢?

bash-3.00# ping -i pcn0:1 -s 192.168.16.107
PING 192.168.16.107: 56 data bytes
64 bytes from ljok (192.168.16.107): icmp_seq=0. time=0.252 ms
64 bytes from ljok (192.168.16.107): icmp_seq=1. time=0.231 ms
64 bytes from ljok (192.168.16.107): icmp_seq=2. time=0.200 ms
64 bytes from ljok (192.168.16.107): icmp_seq=3. time=0.194 ms
64 bytes from ljok (192.168.16.107): icmp_seq=4. time=0.198 ms
^C
----192.168.16.107 PING Statistics----
5 packets transmitted, 5 packets received, 0% packet loss
round-trip (ms)  min/avg/max/stddev = 0.194/0.215/0.252/0.025
bash-3.00# traceroute -i pcn0:1 192.168.16.107
traceroute to 192.168.16.107 (192.168.16.107), 30 hops max, 40 byte packets
1  ljok (192.168.16.107)  0.000 ms  0.000 ms  0.000 ms
bash-3.00#

论坛徽章:
0
10 [报告]
发表于 2007-09-20 12:38 |只看该作者
原帖由 yuhuohu 于 2007-9-20 10:57 发表
yun,那不是这样子试验滴..

host1---------pcn0:1        solaris        pcn0--------------host2

host1 ping host2
or
host2 ping host1



关掉IP FORWARD,如果不通,再开ip forward,如果通,就说明ip forward起作用了嘛。。。

host1 ping host2
or
host2 ping host1
or
host1 ping pcn0
or
host2 ping pcn0:1
至于traceroute命令,在细节方面你可以多试验各种角度的tracert,经验多了就知道什么时候通与不通了
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP