有很多朋友問弱電君,關于ip地址,為什么有時能ping通,有時卻ping通,這個問題我們在做關于監(jiān)控或網(wǎng)絡故障的問題中經(jīng)常會遇到,今天我們就來了解下。
一、什么情況下ping不通?
假設電腦A、B均在192.168.0.X的網(wǎng)段內,兩臺電腦不需要額外設置,就可以互相ping的通。如果ping不通,可能的原因有:
a、目標主機的防火墻沒關
b、目標主機有電腦管家/360等防護軟件
如上圖,A和B分屬不同網(wǎng)段,此種情況B可ping通A,但A不可以ping B。因為B的IP經(jīng)過路由器net(網(wǎng)絡地址轉換)后,對外顯示的是192.168.0.148,A并不知道有B的存在。若想讓A也能ping B,需要告訴A電腦路由該怎么走,在A電腦上加一條靜態(tài)路由:
在dos下輸入以下指令:route -p add 目的地址 mask 子網(wǎng)掩碼 網(wǎng)關地址
它的意思是,要想找到“目的地址”,就要通過“網(wǎng)關地址”里面找。-p是永久有效的意思。
所以,對應到上面的例子,指令應該這么寫:route -p add 192.168.19.0 mask 255.255.255.0 192.168.0.148。其中192.168.19.0的意思是對192.168.19網(wǎng)段下所有ip均有效。添加完畢后可用 route print 查看是否添加成功。(注意在win10下要以管理員身份運行dos才可添加)
如果還是不行,極有可能是B電腦的路由器里面做了安全設置,不允許外網(wǎng)ping內網(wǎng)。這個根據(jù)路由器型號,可在網(wǎng)上搜索如何進行相關設置。但老式路由器可能沒有在這個功能。如果是這種情況就只能另尋他法了。
二、什么情況下能ping通?
1、如果是同處于一個內部網(wǎng)絡環(huán)境的,就是一個大局域網(wǎng),他們在同一個網(wǎng)段,是可以互相ping通的,這個我們在監(jiān)控項目中用的比較多。何為同一網(wǎng)段,比如192.168.1.5與192.168.1.x屬于同一個網(wǎng)段。
2、同一個局域網(wǎng)內,不同的網(wǎng)段,比如192.168.0.1/24和192.168.1.1/24,他們并不在一個網(wǎng)段內所以無法直接ping通。這時候你可以把2臺電腦接入路由器設置靜態(tài)或者動態(tài)路由,計算機網(wǎng)關指向路由,這樣icmp包就可以相互到達,雙方ping通。
3、如果2臺計算機同時處于公網(wǎng)內,只要能聯(lián)網(wǎng)肯定是可以ping通的。
4、 還有一種情況是有一臺機器是屬于內網(wǎng)的ip如192.168.10.1,另外一臺計算機是公網(wǎng)IP,如202.100.1.17,如果這2臺要ping通的話,內網(wǎng)IP的那臺機器只要能聯(lián)網(wǎng)就能ping的通公網(wǎng)IP的計算機,而公網(wǎng)的計算機要訪問內網(wǎng)計算機,需要通過VPN或者端口映射來完成訪問。