|
在局域網(wǎng)中一般情況下會用192.168.1.1作為網(wǎng)關(guān)設(shè)備和外網(wǎng)交互,首先說我今天的實驗:
第一:向網(wǎng)關(guān)的物理地址發(fā)送一幀TCP報文,TCP報文的IP地址是局域網(wǎng)中的另一臺機(jī)器,例如我發(fā)送端IP是192.168.1.114,接收端的IP是192,168.1.89,那么到了路由器之后他應(yīng)該是做了這些工作計算對方的路由,獲取目標(biāo)MAC,然后TTL減,最后轉(zhuǎn)發(fā)到目標(biāo),還有一點是他用自己的IP替換源IP,那么就變成了由192.168.1.1發(fā)到192.168.1.89的數(shù)據(jù)幀。
第二是如果此時89有服務(wù)器在偵聽那么89就會網(wǎng)關(guān)說受到,可是并不是網(wǎng)關(guān)和你建立連接啊,建立連接的是114,實時證明網(wǎng)關(guān)轉(zhuǎn)發(fā)了這個數(shù)據(jù)包,而且吧IP替換成89的發(fā)送到了114,這就完成了一次通信。
最后網(wǎng)關(guān)是怎么處理客戶端和服務(wù)器之間的聯(lián)系的呢,由上邊的關(guān)系不難看出,網(wǎng)關(guān)肯定是做了一個端口和一個IP地址的映射,要不然網(wǎng)關(guān)怎么會知道這個端口就是這個IP的呢?而我又沒有去刻意的設(shè)置路由器的端口映射,所以表明在局域網(wǎng)中這種通過網(wǎng)關(guān)的端口映射是自動的,他認(rèn)為是合法的,這也就是在服務(wù)器端他不知道是誰發(fā)來的數(shù)據(jù),只有個端口,而客戶端他知道要找誰他的端口是多少!之前做過UDP穿透,通過廣域網(wǎng)就要在路由器做端口映射,不符合的全部是不合法的,這也許就是原因吧!但愿我想的是對的!
|
|