趙小牛 <RyanChao.bbs@bbs.kimo.com.tw>
wrote in message
news:3beaHR$N0i@bbs.kimo.com.tw...
> ※ 引述《albin.bbs@bbs.yzu.edu.tw
(.)》之銘言:
> > ※ 引述《RyanChao.bbs@bbs.mgt.ncu.edu.tw
(懶得理妳)》之銘言:
> > > 虛擬ip ping真實ip可以啊...
> > > 若是真實的pi虛擬的就不行了啦....
> > >
網芳看的見是因為你是用netbuei在broadcasting...
> > > 它又不走tcp/ip的layer所以當然看得到...
> > 嗯~~但我虛擬ping虛擬可以!
> > 但虛擬ping真實就不行呀!
> > 在區域中唷!
> > 因為我是接在hub上的!
>
>
我終於搞清楚你在問啥了。...
>
你一定是跟那台電腦在不同網段吧??
> 而你跟那台虛擬IP的電腦又在同一網段說....
>
> 當然PING不到真實IP的那台啊....
>
因為你那網段的路由器把你虛擬IP給擋下來了....
> 但是同一網段的虛擬IP你當然PING是沒問題囉......
>
> 你恐怕要做ip routing了說...
> 不然那router一定是像門神一樣,把你的封包給擋下來...^O^
是否因為 router 擋下來有待權商。
但要弄懂 routing 之前﹐必須會得計算兩樣東西﹕net_ID 和
host_ID。這兩個都需要
IP 地址的值和 netmask 的值來計算﹕net_ID 是 IP 和 MASK 做一個
AND 的邏輯運算
求得﹐而 host_ID 則用 NAND 運算來獲得。
在相同 net_ID 下面﹐是不能使用相同 host_ID
的﹐否則就是所謂的 IP 地址衝突。
一台主機可以同時插上多張網路界面﹐而一個界面也可以同時綁上多個
IP。
先別管 host_ID﹐只要物理連線是可行的﹐兩個 IP 的 net_ID
是一樣的話﹐會查詢
ARP table﹐或者用 ARP 來查詢對方的 MAC﹐再把封包送給對方﹐然後再看所用的
datalinik 協定(IEEE80x或其它)完成數據的傳遞。
如果得出來到 net_ID 不一樣﹐那麼兩個 IP 之間(不是說兩個界面哦)就一定要經過
router 來完成﹐而 router 也必須要有相同的 net_ID 分別和兩端的
IP 連接(或是其
間經過多個 router)﹐然後再重複上面的檢測就是了。
弟有一篇討論是和網友討論 IP routing
相關問題的﹐或許可以參考一下﹕
http://pds.nchu.edu.tw/study_area/tips/iproute.htm
--