日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

CentOS 6.x搭建Open***实现双IDC互联

發(fā)布時間:2024/4/13 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CentOS 6.x搭建Open***实现双IDC互联 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一、需求說明

1、網絡拓撲結構

2、環(huán)境說明

設備名稱
IP地址信息所屬機房
***server

外網eth0 ?10.0.0.3 ? ? VMnet3

內網eth1 ?192.168.1.4 ?VMnet4

網關 機房默認網關

上海
***client

外網eth0 ?10.0.0.4 ? ? VMnet3

內網eth1 ?172.16.1.4 ? VMnet5

網關?機房默認網關

北京
client1

eth0 192.168.1.5 ? ? ? VMnet4

網關 192.168.1.4

上海
client2

eth0 172.16.1.5 ? ? ? ?VMnet5

網關 172.16.1.4

北京

3、實現(xiàn)目標

1、實現(xiàn)上海IDC機房和北京IDC機房內網機器互聯(lián),即我們可以通過client1 ping通client2

2、實現(xiàn)192.168.1.5和172.16.1.5互通

? ?在實驗前,請把四臺虛擬機準備好,IP配置好,其中我設置的VMnet3、4、5都是僅主機模式,大家可以先把需要安裝的軟件安裝好在修改為僅主機,因為僅主機模式不能上互聯(lián)網,給電腦的VMnet4配置一個192.168.1.11,給VMnet5配置一個172.16.1.11,然后我們就可以通過連接四臺虛擬機了。

3、環(huán)境搭建好之后我們檢查一下聯(lián)通性,正常情況下六個IP互通情況如下


192.168.1.5192.168.1.410.0.0.310.0.0.4172.16.1.4172.16.1.5
192.168.1.5
192.168.1.4
10.0.0.3
10.0.0.4
172.16.1.4
172.16.1.5

這里可以使用tcpdump抓包查看過程?


4、把***Server、***Client的數(shù)據(jù)包轉發(fā)打開,不然數(shù)據(jù)傳輸不過去

# echo 1 > /proc/sys/net/ipv4/ip_forward?

這里可以使用tcpdump抓包查看過程?? ?

二、Open*** Server的安裝配置

1、Open***下載

? ? 通過官網下載最新版本的open***。http://open***.net/,有可能因為國家防火墻的原因,可能無法訪問,我這里提供的下載地址是https://swupdate.open***.org/community/releases/open***-2.3.7.tar.gz

2、Open*** Server安裝
? ? 我的系統(tǒng)環(huán)境是CentOS 6.3 32位最小化安裝,我的上一篇文章是使用的yum安裝,http://wangzan18.blog.51cto.com/8021085/1673778,使用的是epel倉庫,我還是推薦大家使用yum安裝,簡單方便,open***依賴一些軟件,openssl提供數(shù)據(jù)加密,lzo提供數(shù)據(jù)壓縮,我們都可以使用yum進行安裝,這里我的open***使用源碼編譯安裝,一些依賴的軟件包大家請?zhí)崆跋螺d好。

#安裝依賴的軟件包 yum?install?openssl-devel?lzo-devel?pam-devel?gcc?wget?-y #下載open***軟件 wget?https://swupdate.open***.org/community/releases/open***-2.3.7.tar.gz? #編譯安裝open*** tar?xf?open***-2.3.7.tar.gz cd?open***-2.3.7 ./configure?--prefix=/usr/local/open***?--sysconfdir=/etc/open***

? ? 如果出現(xiàn)以上的內容,證明我們配置好了,下面我們就進行編譯安裝

make make?install tree?/usr/local/open***/

? ? 安裝好的目錄結構大概如下,不同版本可能有所不同

? ? 下面我們添加open***的配置文件

mkdir?/etc/open*** cp?sample/sample-config-files/server.conf?/etc/open***/

? ? 因為我們這個版本沒有提供密鑰生成更具,但是他給我們提供了默認的證書,在open***-2.3.7/sample/sample-keys目錄下面


3、我們這里現(xiàn)在密鑰生成工具

#下載密鑰生成工具 wget?https://github.com/Open***/easy-rsa/archive/release/2.x.zip unzip?2.x.zip #復制我們的CA到open***配置目錄下 cp?-ra?easy-rsa-release-2.x/easy-rsa/2.0?/etc/open***/easy-rsa cd?/etc/open***/easy-rsa

? ? 根據(jù)腳本的名字我們可以猜測到工具的功能,首先我們先修改一下vars這個文件,修改成我們相關的內容。

# vim vars

# source vars

# ./buile-ca

? ? 創(chuàng)建服務器證書

# ./build-key-server server

? ? 創(chuàng)建客戶端證書

#?./build-key client

? ? 創(chuàng)建Diffie Hellman參數(shù)

# ./build-dh

? ? 這一步需要的時間很長,大家可以把vars文件里面的export KEY_SIZE=2048 改為1024

生產的證書全部放在easy-rsa目錄下面的keys里面

4、Open*** Server的配置

? ? 我們查看一下配置文件的內容,具體每個參數(shù)的含義配置文件講解的很詳細,我這里不再陳述,為了看起來簡便,我這里把注釋刪掉,參數(shù)不是很多,我們對其修改成我們需要的,修改后我這里是這樣的。

grep?-vE?'^#|^;|^$'?/etc/open***/server.conf

--client-config-dir /etc/open***/ccd/

? ? 通過該選項為存放客戶端定制的配置文件指定一個目錄,在一個***用戶通過客戶端驗證之后,Open***將會查找這個目錄,通過這些文件可以使用--ifconfig-push來指定一個固定的客戶端IP地址,也可以使用--iroute指定一個客戶端自己擁有的子網。

--push "route 192.168.1.0 255.255.255.0"

? ? 這項指令是把***Server后端的子網推送給***Client,要不Client不知道如何到達這個子網。

--route 172.16.1.0 255.255.255.0

? ? 這項指令是給***Server添加一條路由,要不***Server不知道如何到達172.16.1.0網段。

--server 10.8.0.0 255.255.255.0

? ? 這項指令是給***Client分配IP地址。

cat?/etc/open***/ccd/client

--iroute 172.16.1.0 255.255.255.0

? ? 為特定的客戶端生產內部路由。

--ifconfig-push 10.8.0.4 10.8.0.5

? ? 這條指令就是給特定客戶端指定分配的IP的,可以不使用,除非客戶端比較多,你有必要進行區(qū)分。

? ? 到此服務端的配置告一段落


三、Open*** Client的安裝配置

1、客戶端的安裝

? ? 客戶端的安裝請安裝服務端的安裝,過程一樣

2、客戶端的配置

? ? 下面我把我的客戶端配置文件發(fā)送一下,首先我們需要把服務器端的證書文件拷貝過來。

# cat /etc/open***/client.conf

? ? 客戶端的配置比較簡單,這里不在進行講解。


四、服務的啟動及測試

1、首先我們先查看一下***服務端和客戶端的路由信息

***服務端


***客戶端


2、***服務端及客戶端的啟動

***服務端啟動

/usr/local/open***/sbin/open***?/etc/open***/server.conf?& cat?/var/log/open***/open***.log

***客戶端啟動

/usr/local/open***/sbin/open***?/etc/open***/client.conf

3、***服務端及客戶端的啟動后的路由信息

***服務端

? ? 我們可以看到增加了一個虛擬網卡,增加了幾條路由。

? ? Open***默認使用的net30模式,10.8.0.1是獲取的一個實際IP,接受ping,10.8.0.2是Open***內部的一個虛擬IP地址,它被用作末端路由,對于這個地址,Open***不會接受ping。

? ? 我們可以在啟動的時候增加一個參數(shù)--topology subnet讓Open***工作在subnet模式下,使用此模式要去掉前面的選項--ifconfig-push,不然客戶端會連接失敗,具體net30和subnet模式的區(qū)別,大家可以參考官網文檔(man open*** ,doc)或者參考本文附錄。

#?/usr/local/open***/sbin/open*** --config /etc/open***/server.conf --topology subnet

***客戶端

? ? 現(xiàn)在***服務端和客戶端都有到達對方后端子網的路由,我測試了一下,他們到對方后端子網的網絡都已經聯(lián)通了,我這里就不在貼圖了。

這里可以使用tcpdump抓包查看過程?

五、項目需求實現(xiàn)

1、我們在client1測試

? ? 結果顯示client1可以ping通client2。

2、在client2上面測試

? ? 我們可以看到client2和client1也是互通的,由此證明項目成功。


六、項目改進

1、不修改客戶機默認網關

? ? 我們知道,上面的環(huán)境是所有的客戶機網關都指向了***服務器,在很多環(huán)境場合是不允許我們修改內網客戶機的網關,數(shù)量少還可以,數(shù)量多的話那就是很大的工作,并且可能會影響服務的運行,而且所有的流量都經過***也是對***服務器很大的壓力。

? ? 假設所有的客戶機都是現(xiàn)有的默認網關,我們實現(xiàn)的目的就是他們到達對方子網的時候經過***服務器,而訪問外網還是使用自己默認的網關,其實很簡單,我們只需要在每個客戶機上面添加上到對方子網的路由。

2、如何添加路由

? ? 對于client1,我是這樣操作,我們刪掉現(xiàn)在的默認路由,可以不設定

route?del?default?gw?192.168.1.4ping?172.16.1.5 connect:?Network?is?unreachable

? ? 這時候我們是無法ping通對方子網的,下面我們添加一條路由

route?add?-net?172.16.1.0/24?gw?192.168.1.4


client2也是如此操作

route?del?default?gw?172.16.1.4 route?add?-net?192.168.1.0/24?gw?172.16.1.4

3、如何更加了解數(shù)據(jù)傳輸過程

? ? Linux提供一個數(shù)據(jù)抓包的命令tcpdump,如果過程中哪里有問題,數(shù)據(jù)就是傳輸不過去,我們可以通過抓包工具一步一步抓取,我這里簡單介紹一個例子,比如我們在client1 ping client2不通,我們首先在***server上面轉包看看數(shù)據(jù)吧流向,然后在***client上面抓取,然后在client2上面抓取,看看數(shù)據(jù)吧是否有回包,如果沒有回包很大可能的情況就是回包路由的問題。


七、附錄

? ? 在--topology mode選項中,mode有三種取值,即net30、subnet和p2p。

? ? 當運行在--dev tun模式下時,可以通過--topology mode選項來配置虛擬地址的拓撲結構。而對于--dev tap而言,該選項沒有任何意義,因為在--dev tap模式下,總是使用子網拓撲。

1、net30

? ?Open***默認的子網掩碼是/30,也就是255.255.225.252。在這樣的情況下,只有兩個地址可以使用,一個給服務端,一個給客戶端,這樣地址是很浪費的。

? ?在Open***的2.0版本中,Open***能通過虛擬一個TUN虛擬接口處理多個客戶端,要處理這種技術,可以把服務器上看到的PtP連接看作是一個操作系統(tǒng)和Open***之間的連接,而在Open***內部還需要為每一個客戶端創(chuàng)建另一個PtP。如何所有的O/S在TUN接口上真正的支持PtP連接,那么這將會是的Open***服務器僅使用一個IP地址,并且一個客戶端也使用一個IP地址。

2、subnet

? ?subnet通過配置TUN接口的本地IP地址和子網掩碼來使用一個子網,而不是點對點的拓撲結構,類似于使用--dev tap和以太網橋模式的拓撲結構。這種模式為每個客戶端分配單個IP地址。

3、p2p

? ?p2p模式使用點對點拓撲,僅適用于Windows系統(tǒng)下,現(xiàn)在已經不再贊成使用。


如有什么不同意見歡迎和我交流,謝謝!




超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生

總結

以上是生活随笔為你收集整理的CentOS 6.x搭建Open***实现双IDC互联的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。