[問題]NAT server架不起來!

這個版面主要討論 debian 在 server 端的應用問題, server 種類繁多..舉凡 Web Server 、 File Server、 DHCP Server..等等。

版主: 阿信

[問題]NAT server架不起來!

文章rollboy » 週五 12月 12, 2003 2:09 pm

小弟的debian主機裝有兩張網卡.eth0跟eth1!
現在eth0已經可以ping到外部主機了...但eth1卻ping不到內部主機!
底下是我的interfaces設定!

代碼: 選擇全部
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)

# The loopback interface
auto lo
iface lo inet loopback

# The first network card - this entry was created during the Debian installation
# (network, broadcast and gateway are optional)
auto eth0
iface eth0 inet static
   address 61.64.118.xxx
   netmask 255.255.255.0
   network 61.64.118.0
   broadcast 61.64.118.255
   gateway 61.64.118.254

auto eth1
iface eth1 inet static
   address 192.168.0.2
   netmask 255.255.255.0
   network 61.64.118.0
   broadcast 61.64.118.255


至於nat部分...我是參考無痛起步法做了幾個設定!

載入相關 kernel module
modprobe ip_tables

echo "modprobe ip_tables" >> /etc/modules

更改相關設定檔
/etc/sysctl.conf

#
# /etc/sysctl.conf - Configuration file for setting system variables
# See sysctl.conf (5) for information.
#
net/ipv4/ip_forward=1
執行相關指令
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j MASQUERADE

然後下/etc/init.d/iptables save active!
下lsmod有看到iptables的東東!
至/proc/sys/net/ipv4/ip_forward看到的數值也是"1"

WIN主機的網路設定如下!
address 192.168.0.3
netmask 255.255.255.0
gateway 192.168.0.2


真是奇怪...不知道是不是哪邊設定出了問題...
請大家幫小弟看看......thx :roll:
rollboy
懵懂的國中生
懵懂的國中生
 
文章: 210
註冊時間: 週六 10月 11, 2003 4:47 pm
來自: chiayi

re:[問題]NAT server架不起來!

文章kahn » 週五 12月 12, 2003 3:03 pm

iptables -t nat -L
Chain PREROUTING (policy ACCEPT)
target prot opt source destination

Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
MASQUERADE all -- 192.168.2.0/24 anywhere <---有出現這行嗎?

Chain OUTPUT (policy ACCEPT)
target prot opt source destination

ping 不到 client 端的pc 請檢查client 有無防火牆檔著,網路設定是否正確
頭像
kahn
活潑的高中生
活潑的高中生
 
文章: 350
註冊時間: 週三 9月 04, 2002 10:52 pm
來自: 彰化

re:[問題]NAT server架不起來!

文章rollboy » 週五 12月 12, 2003 3:44 pm

嗯..我下 iptables -t nat -L 後有MASQUERADE all -- 192.168.2.0/24 anywhere 這一行!

因為之前red hat就架過nat..所以大概知道怎麼作!
但就是連不起來....... :crying:
rollboy
懵懂的國中生
懵懂的國中生
 
文章: 210
註冊時間: 週六 10月 11, 2003 4:47 pm
來自: chiayi

re:[問題]NAT server架不起來!

文章d2207197 » 週五 12月 12, 2003 6:53 pm

你 eth1 的 network 和 broadcast 設錯了
代碼: 選擇全部
   network 61.64.118.0
   broadcast 61.64.118.255


network 網路開頭
broadcast 網路結尾

192.168.0.x 通常是 class C 的
所以是
代碼: 選擇全部
   network 192.168.0.0
   broadcast 192.168.0.255
頭像
d2207197
鑽研的研究生
鑽研的研究生
 
文章: 1763
註冊時間: 週二 5月 27, 2003 9:57 pm
來自: 火星

re:[問題]NAT server架不起來!

文章rollboy » 週五 12月 12, 2003 7:05 pm

阿....忘記eth1的ip是192.168.x.x開頭的 :ooops:
那這會影響nat連線嗎? :mygod:

晚點再試試看....多謝 :mrgreen:
just for fun ...
rollboy
懵懂的國中生
懵懂的國中生
 
文章: 210
註冊時間: 週六 10月 11, 2003 4:47 pm
來自: chiayi

re:[問題]NAT server架不起來!

文章Tetralet » 週五 12月 12, 2003 7:06 pm

rollboy 寫:嗯..我下 iptables -t nat -L 後有MASQUERADE all -- 192.168.2.0/24 anywhere 這一行!

還有,
這裡似乎應該是 192.168.0.0/24 才對吧?
時間並不能治療我心中的疼痛
南方的春天說什麼也溫暖不了我冰冷的血

誦唱大復活咒文,今天的 Tetralet 又在唧唧喳喳了 重生!
Tetralet
俺是博士
俺是博士
 
文章: 3078
註冊時間: 週四 11月 28, 2002 3:02 pm

re:[問題]NAT server架不起來!

文章rollboy » 週五 12月 12, 2003 7:20 pm

Tetralet 寫:
rollboy 寫:嗯..我下 iptables -t nat -L 後有MASQUERADE all -- 192.168.2.0/24 anywhere 這一行!

還有,
這裡似乎應該是 192.168.0.0/24 才對吧?


呵呵...sorry...這裡是打錯的!
因為我是直接複製kahn大打的那一段過來的.....

是192.168.0.0/24沒錯...獻醜了 :-o
rollboy
懵懂的國中生
懵懂的國中生
 
文章: 210
註冊時間: 週六 10月 11, 2003 4:47 pm
來自: chiayi

re:[問題]NAT server架不起來!

文章rollboy » 週五 12月 12, 2003 9:09 pm

ok..剛剛又檢查一次...

active
代碼: 選擇全部
# Generated by iptables-save v1.2.6a on Fri Dec 12 21:36:40 2003

*nat

:PREROUTING ACCEPT [0:0]

:POSTROUTING ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

[0:0] -A POSTROUTING -s 192.168.0.0/255.255.255.0 -o eth0 -j MASQUERADE

COMMIT

# Completed on Fri Dec 12 21:36:40 2003


interfaces
代碼: 選擇全部
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)



# The loopback interface

auto lo

iface lo inet loopback



# The first network card - this entry was created during the Debian installation

# (network, broadcast and gateway are optional)

auto eth0

iface eth0 inet static

   address 61.64.118.145

   netmask 255.255.255.0

   broadcast 61.64.118.255

   network 61.64.118.0

   gateway 61.64.118.254



auto eth1

iface eth1 inet static

   address 192.168.0.2

   netmask 255.255.255.0

   broadcast 192.168.0.255

   network 192.168.0.0


iptables -t nat -L
代碼: 選擇全部
Chain PREROUTING (policy ACCEPT)

target     prot opt source               destination         



Chain POSTROUTING (policy ACCEPT)

target     prot opt source               destination         

MASQUERADE  all  --  192.168.0.0/24       anywhere           



Chain OUTPUT (policy ACCEPT)

target     prot opt source               destination


lsmod
代碼: 選擇全部
Module                  Size  Used by    Not tainted

nls_cp437               4384   2  (autoclean)

ipt_MASQUERADE          1216   1  (autoclean)

iptable_nat            12660   1  (autoclean) [ipt_MASQUERADE]

ip_conntrack           12684   1  (autoclean) [ipt_MASQUERADE iptable_nat]

ip_tables              10432   4  [ipt_MASQUERADE iptable_nat]



還是不行............ :crying: :crying: :crying:
rollboy
懵懂的國中生
懵懂的國中生
 
文章: 210
註冊時間: 週六 10月 11, 2003 4:47 pm
來自: chiayi

Re: [問題]NAT server架不起來!

文章Tetralet » 週五 12月 12, 2003 9:54 pm

rollboy 寫:現在eth0已經可以ping到外部主機了...但eth1卻ping不到內部主機!


您是指說從外部某一台主機,例:61.64.118.144,
Ping 不到 192.168.0.3 嗎?
時間並不能治療我心中的疼痛
南方的春天說什麼也溫暖不了我冰冷的血

誦唱大復活咒文,今天的 Tetralet 又在唧唧喳喳了 重生!
Tetralet
俺是博士
俺是博士
 
文章: 3078
註冊時間: 週四 11月 28, 2002 3:02 pm

re:[問題]NAT server架不起來!

文章rollboy » 週六 12月 13, 2003 1:12 am

yes....比如說我可以ping到61.64.118.254
但ping不到192.168.0.3(win主機ip)

不過我覺得問題出在linux主機的機率並不高..
其實我剛剛又灌回red hat試試看...仍然不行!
跟debian的情形一樣...linux能ping到外部主機..但卻ping不到內部主機!

我很擔心是網路或hub(我的hub會自己判斷是否該跳線)之間的問題....也許網路卡也有問題!

交叉測試似乎也沒啥問題......真是 :-(
just for fun ...
rollboy
懵懂的國中生
懵懂的國中生
 
文章: 210
註冊時間: 週六 10月 11, 2003 4:47 pm
來自: chiayi

re:[問題]NAT server架不起來!

文章Tetralet » 週六 12月 13, 2003 1:34 am

rollboy 寫:yes....比如說我可以ping到61.64.118.254
但ping不到192.168.0.3(win主機ip)

不過我覺得問題出在linux主機的機率並不高..
其實我剛剛又灌回red hat試試看...仍然不行!
跟debian的情形一樣...linux能ping到外部主機..但卻ping不到內部主機!

我很擔心是網路或hub(我的hub會自己判斷是否該跳線)之間的問題....也許網路卡也有問題!

交叉測試似乎也沒啥問題......真是 :-(


嗯...

我猜,問題是出在外部的那一台主機,(例:61.64.118.144),
它的 Routing Table 的問題。

它的 Gateway 我猜是指向 61.64.118.254,對吧?
所以 192.168.0.0/24 的封包它當然會丟向 61.64.118.254 囉,
(不管怎麼樣,它就是不會往 61.64.118.145 丟的!)
而 61.64.118.254 看到 192.168.0.0/24 的封包當然是直接丟掉了...

所以 Ping 192.168.0.3 不會有回應的原因是因為封包沒有辨法傳送到 192.168.0.3!


解決的方法之一是修改您外部的那一台主機的 Routing Table,
例:

代碼: 選擇全部
route add -net 192.168.0.0 netmask 255.255.255.0 gw 61.64.118.145



請您不妨試試看!
時間並不能治療我心中的疼痛
南方的春天說什麼也溫暖不了我冰冷的血

誦唱大復活咒文,今天的 Tetralet 又在唧唧喳喳了 重生!
Tetralet
俺是博士
俺是博士
 
文章: 3078
註冊時間: 週四 11月 28, 2002 3:02 pm

re:[問題]NAT server架不起來!

文章rollboy » 週六 12月 13, 2003 6:04 pm

哈哈....謎題揭曉!
今天我想說碰碰運氣....把win跟hub之間的網路線給換了!
之後呢............看到hub跟adsl的燈號開始閃了 :mrgreen:
我可以ping到linux那台,也可以使用ssh,也可以上網嘍!

可是我不知道為什麼會這樣....
描述一下好了....
在沒有nat跟hub之前.....
我用
win--網路線1--adsl--internet (這時網路線1是正常的)

後來裝了nat..改用
win--網路線1--hub--網路線2(eth1)--linux--網路線3(eth0)--adsl--internet

我是剛剛把網路線1改成別條線.....整個網路就通了!

如果是跳線問題造成的...我覺得不太可能耶!
因為我的hub會處理這個問題...真是奇怪!

anyway...謝謝樓上幾位大大的幫助..感謝 :-D
rollboy
懵懂的國中生
懵懂的國中生
 
文章: 210
註冊時間: 週六 10月 11, 2003 4:47 pm
來自: chiayi

re:[問題]NAT server架不起來!

文章d2207197 » 週六 12月 13, 2003 7:05 pm

ㄜ.......|||

電腦--電腦,要跳線
電腦--hub/switch--電腦,不用跳線

電腦接 adsl modem 的網路線通常是有跳線的
我記得中華電信以前黑色那台有跳線,但是後來白色的那台就沒有了
你的那條線應該是跳過線的,所以中間放台 hub or switch 就會出問題

有沒有跳線,對對看網路線兩邊順序是否完全一樣,一樣就是沒有跳
頭像
d2207197
鑽研的研究生
鑽研的研究生
 
文章: 1763
註冊時間: 週二 5月 27, 2003 9:57 pm
來自: 火星


回到 debian server

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 1 位訪客