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 - 空檔
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,自己隨便設。