Re: [問答] 請問私網/公網的問題

作者: pichubaby (Pichu)   2020-05-05 19:13:19
IPv4 的 IP 大致上可以分兩種
第一種是私人網段 = Private IP = 虛擬IP
特徵是他的開頭是 192.168.x.x
或是 172.16.x.x
或是 10.x.x.x
https://zh.wikipedia.org/wiki/%E4%B8%93%E7%94%A8%E7%BD%91%E7%BB%9C
理論上同樣的虛擬IP只會在同樣的區域網路內通
另外的都是公有IP = Public IP = 實體IP
* 還有其他的例如廣播位置之類但目前不重要
但實際上有個技術叫做 NAT
使得虛擬IP可以和實體IP做連通,但是條件是必須要虛擬IP先聯絡實體IP
你買的東西雖然你叫他 AP, 但是實際上如果是純AP並不會有NAT功能
他會有NAT功能是因為他同時是一台「IP分享器」
NAT功能指的是他可以把虛擬IP們轉成一個實體IP出去
在虛擬IP 192.168.0.3 的 14433 port 發出去的IP透過NAT後變成
140.117.123.4 的 3322 port 然後連接到目標伺服器 8.8.8.8 的 53 port
(以上都是舉例)
然後 8.8.8.8 的 53 port 回應訊息時回給 140.117.123.4 的 3322 Port
負責做 NAT 的設備手上會有張 NAT 表, 他會紀錄哪個「虛擬IP+Port」的組合應該
對應到哪個「實體IP+Port」的組合,順帶一提,這樣的組合我們會叫他 Socket Pair
所以假如是主動連線進來,沒有虛擬IP先連出過的 Socket Pair, 那麼 NAT 設備就不知道
該傳給誰,就會丟掉封包(或是和來源主機說這個Port沒開)
只有在虛擬IP先主動連出了,產生了Socket Pair之後才會有辦法讓封包傳回虛擬IP內的設
備.
然後ping是ICMP, ICMP 很不巧的沒有Port, 所以他用的是魔法.
※ 引述《HuangJC (吹笛牧童)》之銘言:
: 大家好,第一次來到貴板發言,先拜個碼頭 <(_ _)>
: 這次來這裡,是想請問:
: 我知道 私網可以 ping 到公網,但是公網不可以 ping 私網
: 理由也很簡單:如果公網可以 ping 私網,那麼一個特定的私網 IP, 應該要 ping 誰?
: 私網是為了 IP 分享之類理由而生的
: 每個私網,都可能有同一個私網 IP
: 因此,這根本等同無法辨識
: 可是,我大可 ping 該私網的對外窗口;那個必是公網 IP
: 然後特定的 port 如果有打開,有設定
: 它就當然可以設為連入到特定私網 IP
: 事實上我也描述了如何在私網 IP 架設網頁的方法
: 但是我也只懂到這裡了
: 然後我要問的是:為什麼私網可以收 email?
: 以前我只想到向外 ping,公網 IP 有唯一性
: 但我卻隱隱覺得有個問題沒想通
: 那就是,位在公網的 mail server, 當然也得把封包丟回私網啊
: 怎麼這時就不說封包無法去私網呢?
: 或者,這時正是用了 ip forward 的技巧
: mail server 其實是把封包丟給私網對外窗口,然後經特定 port 送給特定 IP?
: 果真如此的話,我是不是可以說:只要能收 email, 就可以架 web server?
: 我是不是可以說:
: 手機分享網路給筆電,筆電可以收 email,所以筆電也可以架 web server
: 如果不行,那麼上面幾句是為什麼錯了?從哪裡有誤解了?
: 謝謝
作者: HuangJC (吹笛牧童)   2020-05-05 20:17:00
你買的東西雖然你叫他 AP, 但是實際上如果是純AP並xxxxxx哈,大感謝;看到這就感覺你懂我的意思:我不夠精確我不是不懂,是不夠精確;而你在幫我修正回來,感謝..
作者: pichubaby (Pichu)   2020-05-05 21:53:00
很正常,假如有人說他家缺AP我就幫他找純AP大概就完了
作者: infosec (InfoSEC)   2020-05-05 22:09:00
NAT session table <- 結束

Links booklink

Contact Us: admin [ a t ] ucptt.com