?? ip-masquerade.txt
字號:
IP)可以連線到網際網路上的其它機器去,然而這個偽裝系統閘道 masq-gate 轉 換它們所有的連線所以這些連線看起來像是原本即從偽裝閘道 masq-gate 本身發 出的,而且還安排偽裝連線傳回的資料轉回原先的系統 - 所以在內部網路上的 系統看到的是直接通往網際網路的遞送路徑而且不知道他們的資料被偽裝過。 2.6 在 Linux 2.2.x 上使用 IP Masquerade 的需求 ** 請參考 [12]IP Masquerade Resource 以獲得最新資訊。** * 2.2.x 版核心的原始程式碼可從 [13]http://www.kernel.org/ 取得。 (大部份現代的發行套件如 Red Hat 5.2 - 配備了 2.0.36 的核心 - 已有了 模組化的核心,且所有 IP Masquerade 所需的選項都已打開。 這種情形下 ,已沒有必要再自行編譯。如果你自己升級核心,你應注意你需要什麼,在 文件稍後會提到。) * 可載入的核心模組,最好是 2.1.121 或以後的版本 * 設定良好的 TCP/IP 網路 相關文件在 [14]Linux NET-3 HOWTO 及 [15]Network Administrator's Guide 也請參考 [16]Trinity OS Doc, 是一份非常完整的 Linux 網路參考指引。 * 將你的 Linux 主機連上網際網路 相關文件有 [17]Linux ISP Hookup HOWTO, [18]Linux PPP HOWTO, [19]Linux DHCP mini-HOWTO 及 [20]Linux Cable Modem mini-HOWTO * IP Chains 1.3.8 或更新的版本。可從 [21]http://www.rustcorp.com/linux/ipchains/ 取得。 版本需求的更多資訊也在 [22]Linux IP Firewalling Chains page。 * 其它的資訊,請見 [23]Linux IP Masquerade Resource 2.7 在 Linux 2.0.x 上使用 IP Masquerade 的需求 ** 請參考 [24]IP Masquerade Resource 以獲得最新資訊。** * 核心 2.0.x 的原始程式碼可以從這里取得 [25]http://www.kernel.org/ (大部份現代的發行套件如 Red Hat 5.2 - 配備了 2.0.36 的核心 - 已有了 模組化的核心,且所有 IP Masquerade 所需的選項都已打開。 這種情形下 ,已沒有必要再自行編譯。如果你自己升級核心,你應注意你需要什麼,在 文件稍後會提到。) * 可載入核心模組,最好是 2.0.0 或更新的版本,可以從這里取得 [26]http://www.pi.se/blox/modules/modules-2.0.0.tar.gz (至少需要 modules-1.3.57) * 設定好的 TCP/IP 網路 相關文件在 [27]Linux NET-3 HOWTO 及 [28]Network Administrator's Guide 也請參考 [29]Trinity OS Doc, 是一份非常完整的 Linux 網路參考指引。 * 將你的 Linux 主機連上網際網路 相關文件 [30]Linux ISP Hookup HOWTO, [31]Linux PPP HOWTO, [32]Linux DHCP mini-HOWTO 及 [33]Linux Cable Modem mini-HOWTO * Ipfwadm 2.3 或更新的版本可以從這里取得 [34]ftp://ftp.xos.nl/pub/linux/ipfwadm/ipfwadm-2.3.tar.gz 在 Linux Ipfwadm 網頁上有更多關於版本的資訊 [35]Linux IPFWADM page * 你可以選擇性地加上一些 IP Masquerade 修補檔以增加其它功能。 從這里 可以取的更多資訊, [36]IP Masquerade Resources (這些修補檔適用於所 有的 2.0.x 核心) 3. IP Masquerade 的設定 如果你的私用網路里有任何重要的資訊,在使用 IP Masquerade 之前請三思 。這可能成為你通往網際網路的閘道,反之亦然,也可能成為另一邊的世界進 入你私用網路的途徑。 3.1 編譯核心加入 IP Masquerade 的支援 如果你的 Linux 發行套件已經將下面將提到的所需特性及模組編譯進去的 話(大部份模組化的核心有你所需的東西),那麼你不需要重新編譯核心。 不 過仍十分建議你讀一讀此節,因為它包含了其它有用的資訊。 Linux 2.2.x 版核心 * 首先,你需要 2.2.x 版核心的原始程式碼。 * 如果這是你第一次編譯核心,不要害怕。 事實上,這非常容易而且涵蓋於 [37]Linux Kernel HOWTO。 * 以這個指令: tar xvzf linux-2.2.x.tar.gz -C /usr/src 將核心原始碼解 開至 /usr/src/, 其中 x 是 2.2 之後的修補層級(確定有一叫 linux 的目 錄或符號連結)。 * 加上適當的修補。因為新的修補檔不斷出來,所以細節不會包含在這里。 最 新的資訊請參考 [38]IP Masquerade Resources。 * 有關編譯核心更進一步的介紹請參考 Kernel HOWTO 以及核心原始程式碼目 錄里的 README 檔案。 * 這里是你要編譯進去的選項: 下列選項要回答 YES: * Prompt for development and/or incomplete code/drivers CONFIG_EXPERIMENTAL - 這將讓你能選擇把實驗性的 IP Masquerade 程式碼編譯到核心里去 * Enable loadable module support CONFIG_MODULES - 讓你能夠載入 ipmasq 相關模組如 ip_masq_ftp.o * Networking support CONFIG_NET * Network firewalls CONFIG_FIREWALL * TCP/IP networking CONFIG_INET * IP: forwarding/gatewaying CONFIG_IP_FORWARD * IP: firewalling CONFIG_IP_FIREWALL * IP: masquerading CONFIG_IP_MASQUERADE * IP: ipportfw masq support CONFIG_IP_MASQUERADE_IPPORTFW - 建議加入 * IP: ipautofw masquerade support CONFIG_IP_MASQUERADE_IPAUTOFW - 可選用 * IP: ICMP masquerading CONFIG_IP_MASQUERADE_ICMP - 支援偽裝 ICMP 封包,建議加入 * IP: always defragment CONFIG_IP_ALWAYS_DEFRAG - 高度建議使用 * Dummy net driver support CONFIG_DUMMY - 建議加入 * IP: ip fwmark masq-forwarding support CONFIG_IP_MASQUERADE_MFW - 可選用 注意: 這只不過是你跑 IP Masquerade 所需的項目,其它的按照你所需的來 選擇。 * 在編譯完核心之後,你需要編譯及安裝模組: make modules; make modules_install * 然後把下面幾行加到你的 /etc/rc.d/rc.local 檔案 (或其它你認為適當的 檔案)中以便於每次重開機時自動載入位於 /lib/modules/2.2.x/ipv4/ 的模 組: . . ./sbin/depmod -a/sbin/modprobe ip_masq_ftp/sbin/modprobe ip_masq_raudio/sbin/modprobe ip_masq_irc(以及其它的模組如 ip_masq_cuseeme, ip_masq_vdolive,如果你有加上這些修補的話) . . . 重要: IP 轉送功能在 2.2.x 版核心中預設是關閉的,請確定你以此指令將 其打開: echo "1" > /proc/sys/net/ipv4/ip_forwarding 對於 Red Hat 的使用者來說,你可以把 /etc/sysconfig/network 中的 FORWARD_IPV4=false 改成 FORWARD_IPV4=true。 * 重新啟動 Linux 主機。 Linux 2.0.x Kernels * 首先,你需要核心的原始程式碼(最好是最新的 2.0.36 或以上的版本)。 * 如果這是你第一次編譯核心,不要害怕。 事實上,這非常容易而且涵蓋於 [39]Linux Kernel HOWTO。 * 以這個指令: tar xvzf linux-2.0.x.tar.gz -C /usr/src 將核心原始碼解 開至 /usr/src/, 其中 x 是 2.0 之後的修補層級(確定有一叫 linux 的目 錄或符號連結)。 * 加上適當的修補。因為新的修補檔不斷出來,所以細節不會包含在這里。 最 新的資訊請參考 [40]IP Masquerade Resources。 * 有關編譯核心更進一步的介紹請參考 Kernel HOWTO 以及核心原始程式碼目 錄里的 README 檔案。 * 這里是你要編譯進去的選項: 下列選項要回答 YES: * Prompt for development and/or incomplete code/drivers CONFIG_EXPERIMENTAL - 這將讓你能選擇把實驗性的 IP Masquerade 程式碼編譯到核心里去 * Enable loadable module support CONFIG_MODULES - 讓你能夠載入模組 * Networking support CONFIG_NET * Network firewalls CONFIG_FIREWALL * TCP/IP networking CONFIG_INET * IP: forwarding/gatewaying CONFIG_IP_FORWARD * IP: firewalling CONFIG_IP_FIREWALL * IP: masquerading (EXPERIMENTAL) CONFIG_IP_MASQUERADE - 這雖然是實驗性的,但卻是 *必須* 的 * IP: ipautofw masquerade support (EXPERIMENTAL) CONFIG_IP_MASQUERADE_IPAUTOFW - 建議加入 * IP: ICMP masquerading CONFIG_IP_MASQUERADE_ICMP - 支援偽裝 ICMP 封包,可選用 * IP: always defragment CONFIG_IP_ALWAYS_DEFRAG - 高度建議使用 * Dummy net driver support CONFIG_DUMMY - 建議加入 注意: 這只不過是你跑 IP Masquerade 所需的項目,其它的按照你所需的來 選擇。 * 在編譯完核心之後,你需要編譯及安裝模組: make modules; make modules_install * 然後把下面幾行加到你的 /etc/rc.d/rc.local 檔案 (或其它你認為適當的 檔案)中以便於每次重開機時自動載入位於 /lib/modules/2.0.x/ipv4/ 的模 組: . . ./sbin/depmod -a/sbin/modprobe ip_masq_ftp/sbin/modprobe ip_masq_raudio/sbin/modprobe ip_masq_irc(以及其它的模組如 ip_masq_cuseeme, ip_masq_vdolive,如果你有加上這些修補的話) . . . 重要: IP 轉送功能在 2.0.34 之後的核心中預設是關閉的,請確定你以此指 令將其打開: echo "1" > /proc/sys/net/ipv4/ip_forwarding 對於 Red Hat 的使用者來說,你可以把 /etc/sysconfig/network 中的 FORWARD_IPV4=false 改成 FORWARD_IPV4=true。 * 重新啟動 Linux 主機。 3.2 指定私用網路的 IP 位址 因為所有其它機器都沒有正式指定的位址,必須有個正確的方式來分配位址給這 些機器。 節自 IP Masquerade FAQ: 有份 RFC (#1597, 現在可能已過時了) 是有關沒有與外界連線的網路該使用什麼 IP 位址。有三個數字區塊是特別為這個目的而保留的。其中一個我使用的是 192.168.1.n 到 192.168.255.n 之間的 255 Class-C 子網路。 節自 RFC 1597:第三節: 私用位址空間 網際網路位址指定當局(IANA: Internet Assigned Numbers Authority) 已經保留下列三個區塊的 IP 位址空間給私用網路: 10.0.0.0 - 10.255.255.255 172.16.0.0 - 172.31.255.255 192.168.0.0 - 192.168.255.255 我們將稱第一個區塊為 "24位元區塊",第二個為 "20位元區塊", 而第三個則稱為 "16位元區塊"。注意到第一個區塊就只是個 class A 網路號碼,第二個區塊則是連續的 16 個 class B 網路 號碼,而第三個區塊是一組 255 個連續的 class C 網路號碼。 所以,如果你要使用一個 class C 網路的話,那麼你的機器應該以 192.168.1.1, 192.168.1.2, 192.168.1.3, ..., 192.168.1.x 來名之。 192.168.1.1 通常是閘道這臺機器,在此即你連上網際網路的 Linux 主機。注意 192.168.1.0 以及 192.168.1.255 分別為網路以及廣播位址,是保留的。避免在 你的機器上使用這些位址。 3.3 配置其它機器
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -