1. 程式人生 > >Ubuntu 12.04雙網絡卡搭建區域網

Ubuntu 12.04雙網絡卡搭建區域網

1, 首先,確保計算機上安裝有兩塊網絡卡!使用lspci 檢視網絡卡,使用ifconfig檢視eth0, eth1 和兩塊網絡卡的對應關係

2, 設定兩塊網絡卡的IP地址, /etc/network/interfaces 中設定,

auto eth0
iface eth0 inet static
address 116.XX.XX.XXX
gateway 116.XX.XX.XXX
netmask 255.255.255.0
dns-nameservers xx.xx.xx.xx

auto eth1
iface eth1 inet static
address 192.168.100.1
netmask 255.255.255.0

DNS除了直接在interfaces設定,還可以在/etc/resolvconf/resolv.conf.d/中設定(提醒,不要直接在/etc/resolv.conf中設定,那個檔案是../run/resolvconf/resolv.conf的一個連結,重啟resolvconf 服務後,裡邊的內容將會被重新整理,重新整理後的內容儲存在/etc/resolvconf/resolv.conf.d/下)

  • base - 空檔
  • head
  • original - 空檔
  • tail - 空檔
/etc/resolvconf/resolv.conf.d/下包含以上4個檔案,通常在original 下新增域名伺服器IP即可,如果該目錄下只有base和head 兩個檔案,在base中新增。

nameserver xx.xx.xx.xx

重啟resolvconf 服務(sudo service resolvconf restart),域名伺服器既可以自動寫入/etc/resolv.conf中。

3, .伺服器配置
基本思想:開啟IP轉發,設定好iptables規則。

3.1.開啟IP轉發
兩種方式,
臨時:echo “1″>/proc/sys/net/ipv4/ip_forward
固定:修改/etc/sysctl.conf,取消這一行的註釋:
net.ipv4.ip_forward= 1
然後重啟網路

3.2.設定iptables規則
臨時:iptables -t nat -A POSTROUTING -j MASQUERADE
固定:
或者把上面這個寫到一個啟動指令碼中。這裡還有另外一個版本:
iptables -F
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o eth1 -j MASQUERADE
第一句是清除掉之前所有的iptables規則,

第二第三句是允許接收和傳送資料包,

第四句是在eth1網口上NAT--地址轉換

-F: FLASH,清空規則鏈的(注意每個鏈的管理許可權)

    iptables -t nat -F PREROUTING     iptables -t nat -F 清空nat表的所有鏈 -P :設定預設策略的(設定預設門是關著的還是開著的) 預設策略一般只有兩種 iptables -P INPUT (DROP|ACCEPT)  預設是關的/預設是開的 比如: iptables -P INPUT DROP 這就把預設規則給拒絕了。並且沒有定義哪個動作,所以關於外界連線的所有規則包括Xshell連線之類的,遠端連線都被拒絕了。

-t nat:顯示所有的關卡的資訊

-A:追加,在當前鏈的最後新增一個規則

-s:指定作為源地址匹配,這裡不能指定主機名稱,必須是IP

IP | IP/MASK | 0.0.0.0/0.0.0.0 而且地址可以取反,加一個“!”表示除了哪個IP之外
-o eth0:從這塊網絡卡流出的資料
流出一般在OUTPUT和POSTROUTING上

4 ,客戶端設定
將預設閘道器設定為192.168.100.1,至於IP,自己隨便設。