NAT路由問題 - Linux

Mason avatar
By Mason
at 2012-01-07T21:03

Table of Contents

最簡單的SNAT拿來當作分享器用的話

假設我實體IP為66.111.222.33

假設某一虛擬192.168.56.101送封包給Google

這時候會在IPTable裡面加上一筆192.168.56.101的資料

然後把封包來源改成66.111.222.33後送出去給Google

Google收到這封包後回傳給66.111.222.33

這時候SNAT攔截到了封包去查看IPTable發現有對應資料

於是乎把目的66.111.222.33改成192.168.56.101

如此一來完成NAT的功能

========================================================

但是我的問題是假設有另一台192.168.56.102也丟封包給Google

這時候Google要回傳封包

那NAT要怎麼知道這回應封包要轉給101還是102呢

TCP可以看seq和ack但其他的封包類型似乎沒辦法

我想到的方法是每個port對應到NAT的其中一個port

例如192.168.56.101:80→66.111.222.33→30080
192.168.56.101:21→66.111.222.33→30021
192.168.56.102:80→66.111.222.33→40080

除此之外是不是有什麼實作方法?

上網查詢很久都查不到相關資料

懇請前輩們解惑

謝謝

--
Tags: Linux

All Comments

Daniel avatar
By Daniel
at 2012-01-11T01:03
就是你想的這樣,server平常也是回傳給來源的port
Irma avatar
By Irma
at 2012-01-14T16:53
就是你想的那樣.. 其實這個東東正確說法叫 PAT !
Oscar avatar
By Oscar
at 2012-01-16T12:44
Port Address Translation!
Sierra Rose avatar
By Sierra Rose
at 2012-01-20T19:11
port:都可以,設定怎麼寫就怎麼分配, ICMP就過不去囉
Caitlin avatar
By Caitlin
at 2012-01-25T01:03
應該說直接連連去的ICMP是不通的,就是直接看到NAT那台機器
Heather avatar
By Heather
at 2012-01-27T20:33
從裡面出去的ICMP,NATserver可以知到誰做了什麼,所以從外面傳
David avatar
By David
at 2012-01-28T17:22
回的封包是可以決定是給裡面那一台機器的,只是要多做一些判斷
ie.NAT裡的電腦還是可以ping google之類的
Sandy avatar
By Sandy
at 2012-02-02T06:23
http://tools.ietf.org/html/rfc5508
NAT Behavioral Requirements for ICMP

改錯/etc/sudoers

Elma avatar
By Elma
at 2012-01-06T19:53
我想加一個不用打sudo密碼的帳號,但是 不小心把/etc/sudoers改壞了,加上我設 定root帳號不能登入,所以現在變成沒有 root權限修正sudoers。 請問要怎麼補救? 0rz... -- 找到之前的文章...,看來出槌的不只我 進grub選recovery - ...

samba 無法使用 LDAP 認證

Genevieve avatar
By Genevieve
at 2012-01-05T12:16
如題... 經過了一番波折後 成功的透過了SAMBA新增LDAP帳號進去了 但在驗證時出現了下面無法驗證的情況 [rootatsamba]# smbclient //192.168.0.*/test -U user Serverand#39;s Role (logon server) conflicts ...

虛擬機器hostOS與guestOS一樣效能會較好?

Todd Johnson avatar
By Todd Johnson
at 2012-01-05T11:40
不好意思 因為沒有虛擬機器的專版 第一直覺就想到 Linux版的各位 應該會有蠻多玩過VM的高手 因此想請問一下 若在同一款虛擬機器上 Host OS與Guest OS一樣 效能是否會比較佳? 例如:在windows裡安裝VirtualBox 在開啟windows ubuntu裡安裝 ...

Linux Kernel 3.2 正式版下載

Charlie avatar
By Charlie
at 2012-01-05T11:39
Linux 3.2核心正式版發佈了 發佈: https://lkml.org/lkml/2012/1/4/395 下載: http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.2.tar.bz2 - ...

gcin和法語鍵盤配置相衝?

Caroline avatar
By Caroline
at 2012-01-04T23:53
請教一下,我是用ubuntu11.04,預設的輸入法平台是gcin,平常用嘸蝦米打中文。 我發現gcin和法文的鍵盤配置有些鍵相衝,像是要打 ^e 這樣的符號時沒辦法出來。 (它的打法是先打^鍵再打e鍵就會出現帶重音的字母) scim好像沒問題,但我沒有在scim上灌嘸蝦米。 在語言設定中改過預設輸入法( ...