poop 撰寫於文章 <8ee20o$lbg$1@news.ethome.net.tw>...
>
>"別找我借錢" <ykleu.bbs@bbs.csie.nctu.edu.tw> 撰寫於郵件
>news:3aDCFT$9GY@bbs.csie.nctu.edu.tw...
>> ※ 引述《w7758@hc.ethome.net.tw (poop)》之銘言:
>> > 我的red hat 6.1 有兩張網路卡
>> > eth0 為 對外  163.32.x.x 為真實ip
>> > eth1 為 對內   192.168.1.1
>> > 設firewall 跑 nat 讓  192.168.1.0這個網段可以上internet
>> > 現我將  dhcp 定在 192.168.1.1
>> > 但 client 卻無法獲得 ip,同時 當然192.168.1.0這個網段也不可以上internet

>> > 請教這是什麼問題
>> > 是不是要裝nat 用的 dhcp
>> > 謝謝
>>
>> DHCP就只有一種,沒有什麼NAT用的DHCP,
>> 你的問題不在DHCP,這是你的路徑沒設對,
>> 你這兩張網路卡之間的ROUTING有設嗎?

如果他的網路卡是用 netconf 或 redhat control-panel 等工具設定的話﹐
routing 應該沒問題了﹐
就算簡單的用 ifup 來啟動界面﹐
對界面所在的 sub-net 也無需另外設定 routing 了

>>
>> 還有,你的DHCP設定檔中對於這兩個SUBNET是如何宣告的?

嗯﹐這點倒要注意一下﹕
1﹐兩張網路卡所在 sub-net 的 defination 都必須要設定起來。
2﹐用做外面的界面﹐即無需提供 DHCP 服務的界面﹐
其所在 subnet 可以不設定 range。簡單的如下﹕
subnet aaa.aaa.aaa.aaa netmask bbb.bbb.bbb.bbb {}

3﹐關於內部界面所在的 subnet ﹐其 options 應該只設定在 {}之間﹐如﹕
subnet xxx.xxx.xxx.xxx netmask yyy.yyy.yyy.yyy {
range ip.ip.ip.ip ip.ip.ip.ip;
options zzzzzzzzz.zzzzzzzz;
options zzzzzzz.zzzzzzz;
}

>
>
>兩張網路卡之間的ROUTING不就是只 nat 嗎
>已經正確設定了阿
>

非也。
routing 是給 IP 通訊本身使用的﹐就算您沒有 NAT 也必須設定好。
而 NAT 可以說是用來設定一些封包轉遞規則﹐
它並沒有完全參與 routing 的動作﹐卻相反﹐ NAT 會限制 routing 的動作。
設定 routing ﹐您可以用 route 這個命令﹐
不過﹐您還要確定 ipforward 已經啟動起來了。
而設定 NAT ﹐則使用 ipchains 和 ipmasqadm 或其它工具。

以下文章希望對您有所幫助﹕
http://pds.nchu.edu.tw/study_area/linux/linux_net.htm
http://pds.nchu.edu.tw/study_area/linux/linux_dhcp.htm
http://pds.nchu.edu.tw/study_area/linux/linux_nat.htm