歡迎您光臨本站 註冊首頁

非固定IP在Ubuntu上架NAT+DHCP

←手機掃碼閱讀     火星人 @ 2014-03-29 , reply:0

應爸爸要求,昨晚(今早)成功架起NAT,簡言之就是Ubuntu + NAT + DHCP配上ADSL撥接(ppp0)。

Ubuntu是近來人氣很高的Linux作業系統,建立於Debian之上,其圖形化介面對使用者很友善。

DHCP(Dynamic Host Configuration Protocol)可以自動分發IP給其他電腦,只需要設定區段即可,例如中華電信便是使用DHCP才能給台灣那麼多台電腦分發浮動IP。

NAT(Network Address Translation)可以將一個IP分給多台電腦共用,功能即一般的「IP分享器」。

所謂ADSL撥接就是一般人家的浮動IP,即需要使用撥接軟體才能上網的。我是跟中華電信申請1浮動改1固定,目前還不用另外加錢。這個固定IP本質並非真的固定IP,無法開機自動連線,仍需撥號。

原本沒用DHCP時,NAT一直架不起來,所以便決定先裝DHCP,無奈百般輸入「# sudo /etc/init.d/dhcp3-server restart」總是失敗,後來才發現是「/etc/network /interfaces」沒有設定好。

輸入「# sudo gedit /etc/network/interfaces」,底下會有auto lo、auto eth0、auto eth1……等,網路上教eth0那邊要打成如下(先不要打)

auto eth0
iface eth0 inet static
address xxx.xxx.xxx.xxx #固定IP
netmask 255.255.255.0
gateway xxx.xxx.x.xxx #預設閘道IP

我便有樣學樣,在address打上我固定的浮動IP,但是卻無法使用,稍微研究后,發現下還有個「auto dsl-provider」,我頓時領悟。現在重點不是eth0或者dsl-provider這些東西,它們本來就是OK我才能上網,就讓他們維持原狀,eth0不該學他們用成固定IP的樣子,就讓它像原本的「iface eth0 inet dhcp」即可,現在要改的是eth1啊!

auto eth1
iface eth1 inet static
address 192.168.1.2 #自訂私有IP
netmask 255.255.255.0

這個對內的網卡要設成固定(static),還要給予一個私有IP,且要與準備分配的IP同範圍(如上方的1)。設定好后要記得重新啟動網路服務「# sudo /etc/init.d/networking restart」

OK后,可以到系統->管理->網路檢查,此時你會發現一開始來這邊設就可以了。

接著別忘了「# sudo gedit /etc/default/dhcp3-server」,並修改「INTERFACES=""」成「INTERFACES="eth1"」。

最後一個困難的步驟就是修改「/etc/dhcp3/dhcpd.conf」,不過當我辛辛苦苦修改完,打開Firestarter並設定DHCP跟NAT(我選「Creat new DHCP configuration」),接著再回到「 /etc/dhcp3/dhcpd.conf」,裡面的內容已經不是我參考鳥哥辛苦打入的,而是Firestarter靈巧的設定,比我打的還少,省了好幾B的容量。

# DHCP configuration generated by Firestarter
ddns-update-style interim;
ignore client-updates;

subnet 192.168.1.0 netmask 255.255.255.0 {
option routers 192.168.1.2;
option subnet-mask 255.255.255.0;
option domain-name-servers 168.95.1.1; #中華電信的DNS位址
option ip-forwarding off;
range dynamic-bootp 192.168.1.30 192.168.1.50; #自動分配IP的範圍
default-lease-time 21600;
max-lease-time 43200;
}

別忘了執行「# sudo /etc/init.d/dhcp3-server restart」

如果你跟我一樣懶得自己設定iptables,接下來就超級輕鬆了。請安裝Firestarter,記得將套件庫中的Universe打勾。

以下設定若想參考圖片,請參閱下方網址。

Firestarter -> Preferences -> NetWork Settings,連接乙太網路的「Internet connected network device」選擇ppp0,連接內部電腦的「Local network connected device」選擇eth1,中間兩個Enable都打勾,底下您可以選擇「 Keep existing DHCP configuration」,他會使用您方才的設定,若選擇「Creat new DHCP configuration」則輸入好分配IP的範圍后,Firestarter會自己設定「/etc/dhcp3/dhcpd.conf」。

忘了提醒大家,要記得把線接好,不然Firestarter沒有測到兩張連接好的網路卡,它是不會啟動NAT的。

事情到這邊還沒有結束,我的電腦還是不能上網,等我把原本區域網路設的192.168.1.3改成「自動取得IP位址」,下方選擇「自動取得DNS伺服器位址」,一切才大功告成。

看著伴我許久的cFos顯示「已中斷連線」,竟有種莫名的悲痛,別了,我的cFos,而且從今以後,我要跟我弟弟共用IP了。

[火星人 ] 非固定IP在Ubuntu上架NAT+DHCP已經有673次圍觀

http://coctec.com/docs/linux/show-post-200956.html