如何實現ip偽裝?我現在有一臺linux主機通過DDN專線連接到Inte.net上,有自己的ip和域名,同時還與20臺95工作站通過HUB連接,我能否通過ip偽裝來實現這20臺95工作站同時上網?
單純的IP Masq很簡單. 如果你用的是2.0.x 和 2.1.xx 核心, 在保證核心內支持IP forward 和 IP Masq的前 提下,在/etc/ppp/if-up里最后加一句(假設你的私用網絡地址是192.168.x.x): /sbin/ipfwadm -F -a m -S 192.168.0.0/16 -D 0.0.0.0/0 如果像我用的是2.1.10x, ipfwadm就不能用了,換成了ipchains, 方法一樣 : /sbin/ipchains -A forward -j MASQ -s 192.168.0.0/16 然后, 讓你的LAN上的所有主機的缺省網關都指向這臺做Masq 的Linux機器就可以了, ipchains需要另外下載,具體情況參見
如果客戶機是win95的話,在DHCP里設一下就全搞定了. 當然, 每臺客戶機的DNS要指向ISP 的DNS, 或者簡單點, 在Masq 機器上開一個cache only 和 forward only的DNS服務器也行. 如果您的DNS已經搞定,用squid也非常簡單,缺省的配置文件/etc/squid.conf就可以 工作(也許需要把http的端口號改為8080),而且可以實現cache的功能,使用效果不錯 方法極為簡單。
第一步:設置好你的PPP,保證在linux box上可以上網。
第二步:運行squid -z 建立cache目錄?
第三步:如果需要,修改/etc/squid.conf, 缺省的就挺好,可改可不改,要改的話,把http_port從3128改到8080
這樣,前期工作一切就緒。以后需要上網時,接通PPP,運行 squid & 你就有了一個挺不錯的proxy了,客戶端設置好proxy, 看好吧。 如果你把pppd 升級到2.3.5, 就可以配置成"按需撥號", 再配上ISDN的話,和專線估計也就沒什么差別了。
缺省網關: 192.168.0.1 (linux box) IP Masq: (linux box) default router : a.b.c.d /sbin/ipfwadm -F -a m -S 192.168.0.0/16 -D 0.0.0.0/0 或者 /sbin/ipchains -A forward -j MASQ -s 192.168.0.0/16 squid: 什么也不用設置, 運行之. 祝你好運. 這里的192.168...只是個例子, 換成你自己的地址范圍。服務器的缺省網關當然是路由器了! 別的機器的缺省網關必須是服務器(linux box).
在Linux服務器上裝兩塊網卡, 一塊接內部網, 給個192.168之類的保留地址, 另一個直接和路由器接 起來,用你的正式地址, 這樣你只需要兩個合法的IP就夠了. 這樣做安全性應該好些. 如果把那個路由器干掉,直接用Linux接專線作路由器,你就只需要一個合法IP了. 不過這個方法以后再慢慢試驗吧, 如何用LUNUX實現NAT,即只申請到有限的IP,但有多人訪問INTERNET,如何用LIUX實現?
兩種方式
1. proxy(即squid或其他proxy).
2. ipmasq + squid
如果,你只要http,ftp,用1,redhat5.1帶了squid的rpm,挺好配的。