作者 主題: [肉腳求救]跨不同介面的網域傳送問題[已解決]  (閱讀 4342 次)

0 會員 與 1 訪客 正在閱讀本文。

特級大肉腳

  • 憂鬱的高中生
  • ***
  • 文章數: 113
    • 檢視個人資料
肉腳最近有一個任務,要讓底下的網路能連通:

PC1(192.168.1.A)                                                 PC2(192.168.1.B)
           |                                                                                |
     ethernet                                                                  ethernet
           |                                                                                |
Device A eth0(192.168.1.1)                               Device B eth0(192.168.1.2)
           |                                                                                |
Device A eth1(10.0.0.1)   -------Wireless-------- Device B eth1(10.0.0.2)


原本計畫是用Device eth0跟eth1直接bridge起來就可以解決的,但是wireless interface就是加不進去。
(顯示操作不被許可)
後來退而求其次,改用iptables作NAT。但是目前的設定,只能從192.168.1.A ping到10.0.0.2。
ping不到192.168.1.2,猜測是在Device A時判斷是192.168.1.0網段又被丟回eth0。
但實在想不出解法。這是肉腳目前的設定:
iptables -P FORWARD ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -t nat -A POSTROUTING -o eth1 -s 192.168.1.0/24 -j MASQUERADE
iptables -t nat -A POSTROUTING -o eth0 -s 10.0.0.0/24 -j MASQUERADE

希望各位大師能幫幫忙,謝謝。
« 上次編輯: 2013-08-08 09:30 由 特級大肉腳 »

rainday

  • 鑽研的研究生
  • *****
  • 文章數: 740
  • 性別: 男
  • enhancing and optimizing
    • 檢視個人資料
Re: [肉腳求救]跨不同介面的網域傳送問題
« 回覆 #1 於: 2013-07-24 22:58 »
在A側 , 192網段的路由在哪裡?  路由決定一切
<0  =_=  Don't learn to hack , hack to learn.

特級大肉腳

  • 憂鬱的高中生
  • ***
  • 文章數: 113
    • 檢視個人資料
Re: [肉腳求救]跨不同介面的網域傳送問題
« 回覆 #2 於: 2013-07-31 11:28 »
目前的架構都沒有設定特定的路由。
請問一下rainday大師,A側的路由要怎麼設呢?

順便問一下,目前會變成這個架構,是因為肉腳在開發一個用Wireless Mesh網路產品,
中間10.0.0.X那邊是用olsrd搭配ad-hoc mode來連結mesh網路。
但是遇到的問題是轉成adhoc後的wireless interface無法跟LAN interface bridge起來。
聽說是adhoc協定的限制,所以才會變成目前這樣的網路架構。 :(
不曉得有沒有更好的解法還解決這個問題?

謝謝。

在A側 , 192網段的路由在哪裡?  路由決定一切

rainday

  • 鑽研的研究生
  • *****
  • 文章數: 740
  • 性別: 男
  • enhancing and optimizing
    • 檢視個人資料
Re: [肉腳求救]跨不同介面的網域傳送問題
« 回覆 #3 於: 2013-08-01 02:26 »
不確定跟ad-hoc有沒有關連
但你的問題,剛好跟另外一篇有點類似
http://phorum.study-area.org/index.php?topic=68788.new;topicseen#new
主要還是在於網段跟gateway的路由途經
你的device A,B的gateway設定是什麼? 192.168.1.1 192.168.1.2 netmask又是什麼? 路由表又有哪些?
這樣就能決定device A在處理192.168.1.2這ip,要送到哪一張網卡及哪一台去了, 同理應用在device B在收到.1.2的回應封包又會回到哪裡去了
在二台上用tcpdump去解讀封包的流向,來源及目的的傳送與接收,這樣才能最清楚的判斷,不然你也會不清楚MASQUERADE後跑到哪裡去了
<0  =_=  Don't learn to hack , hack to learn.

特級大肉腳

  • 憂鬱的高中生
  • ***
  • 文章數: 113
    • 檢視個人資料
Re: [肉腳求救]跨不同介面的網域傳送問題
« 回覆 #4 於: 2013-08-01 10:03 »
後來發現解法了,跟大家分享一下。^^
中間兩台機器的olsrd設定,同時包含wireless跟lan介面,olsrd的路由表自動會更新,擴張到lan那邊的範圍。
這樣兩個網域內的所有device都能互相ping到,前提是兩台PC也要裝olsrd,才會被偵測到。
« 上次編輯: 2013-08-01 10:16 由 特級大肉腳 »

rainday

  • 鑽研的研究生
  • *****
  • 文章數: 740
  • 性別: 男
  • enhancing and optimizing
    • 檢視個人資料
Re: [肉腳求救]跨不同介面的網域傳送問題
« 回覆 #5 於: 2013-08-03 06:09 »
比較沒有接觸ad-hoc的部份
原來如此,受教了,順便找了些資料來看看
感謝分享
<0  =_=  Don't learn to hack , hack to learn.