文章目錄
- 一、背景
- 二、環境配置
- 三、VMware配置
- 3.1 虛擬網卡設定
- 3.2 虛擬機網卡設定
- 四、虛擬機安裝ISO版ROS 5.24系統
- 五、winbox配置ROS
- 5.1 winbox遠程連接ROS
- 5.2 ROS初始化配置
- (1)區分WAN口LAN口并配置網卡名字
- (2)配置網卡IP及子網掩碼
- (3)配置網關
- (4)配置DHCP
- ① 添加DHCP地址池
- ② 配置DHCP服務引數
- ③ 測驗DHCP
- (5)配置全域偽裝
- (6)配置限速策略
- (7)整體測驗
- ① 測驗是否正常上網
- ② 測驗限速情況
一、背景
公司使用的辦公網是交換機連接了三個AP組成的,使用一個C類網段,隨著人越來越多,設備也越來越多,一個C類網段的IP不夠用了,經常會出現有人連接上WIFI但是因為IP池耗盡,DHCP無法分配IP,導致設備無法訪問網路的情況,因為其他一些原因,也沒法多分一個網段給辦公網,我們申請購買一臺企業級路由器,由路由器分一個子網出來,再連接AP,上報后回復是機房有幾臺閑置服務器,部署一個軟路由吧,于是任務落在了還是個小萌新的我身上,
一開始想選擇OpenWrt系統,我們組長提供了ROS系統的鏡像,于是轉而使用這個,但是這個系統對于只玩過一次海蜘蛛的小白(比如我)來說確實比較復雜,折騰了一個多星期,踩坑碰壁無數,終于搞定,
部署程序中怎么找都沒找到一個無坑完整的ROS部署教程,都是這個抄那個,那個抄另一個,還有很多抄漏的錯誤,決定自己寫一份教程,作為自己一個多星期心血的記錄,也希望能幫到后面的人,
二、環境配置
實際部署時不方便截圖等操作,所以現在開個虛擬機來模擬一下,
虛擬機軟體:VMware 15.5
ROS版本:5.24 ISO版
測驗機:ROS-test -A:192.168.20.x (DHCP)
ROS-test -B:192.168.20.x (DHCP)
winbox:winboxx64
網路配置:

使用VMnet8和VMnet9兩張虛擬網卡分別模擬軟路由的WAN口網卡和LAN口網卡,
VMnet8使用NAT模式(橋接也可以,注意網卡的子網IP)連接物理主機外網,軟路由WAN口連接VMnet8網卡,WAN口IP設定為:192.168.10.254,
VMnet9使用“僅主機模式”,兩臺Linux測驗機連接VMnet9虛擬網卡,模擬實際中連接軟路由LAN口的設備,ifcfg-ens33組態檔中設定好BOOTPROTO=DHCP等引數,軟路由LAN口連接VMnet9網卡,LAN口IP設定為:192.168.20.254,
三、VMware配置
3.1 虛擬網卡設定
VMnet8一般自帶的有,再新增一個VMnet9虛擬網卡就可以了,然后設定好子網掩碼等即可,注意取消勾選“使用本地DHCP服務將IP地址分配給虛擬機”,我們的WAN口會配置靜態IP,軟路由設定好后也會自動使用自己的DHCP功能給連接LAN口的設備分配IP,


3.2 虛擬機網卡設定
一共需要三臺虛擬機,一臺ROS,兩臺Linux,按上面的網路環境配置配好對應的網卡,
(1)ROS,需要額外添加一張網卡:

(2)CentOS-7.2 -A:

(3)CentOS-7.2 -B:

好了,現在進入正片,
四、虛擬機安裝ISO版ROS 5.24系統
(1) 選擇“新建自定義(高級)虛擬機”

(2)選擇“稍后安裝作業系統”

(3)選擇虛擬機系統版本

(4)設定虛擬機名稱及路徑

(5)1C1G配置足夠了,網路選擇“NAT模式”



(6)SCSI控制器選它推薦的,注意虛擬磁盤型別選擇IDE,不然ROS不支持,

(7)后續按正常虛擬機配置就可以了,
(8)添加ROS虛擬機的網卡
① 單擊“編輯虛擬機設定”

② 添加配置網路配接器


③ 選擇系統鏡像

④ 開機,開始安裝系統
開機后會讓你選擇安裝什么組件,在不清楚每個都是干什么的之前,建議“A”全選后“I”安裝,

然后會問你“y/n”,都選“y”就行了,

安裝完畢后按回車重啟系統,重啟好了后就安裝成功了,

⑤ Linux測驗機的虛擬機安裝就不寫了,畢竟只是虛擬機模擬實際操作,而且大家應該也都會,不會的網上也大把教程,
五、winbox配置ROS
5.1 winbox遠程連接ROS
① 實際操作中需要把軟路由和自己的電腦接在同一個網路里,直接網線直連更好,然后用winbox連接,
② 單擊winbox的搜索按鈕,它會自動搜索局域網中的ROS主機,然后我們選擇MAC地址連接,因為還沒有配置IP,選IP是連不上的,

如果兩個MAC地址都連不上(比如我寫這篇教程的時候,我也是新手小白,不知道為啥連不上,有大佬愿意指教的話請評論區指點一下,謝謝),我們可以先直連ROS用命令列配置IP,然后用IP連接,
③ 命令列配置ROS網卡IP地址并連接,
ROS默認用戶名admin,無密碼,
ROS的命令并不復雜,使用三條命令就可以給網卡配置好IP(具體如圖):
interface pri # 顯示所有網卡介面名稱,pri是print的縮寫
ip address pri # 顯示當前IP,未配置前是空的,配好后再執行一次看看是否成功
ip address add address=xxx.xxx.xxx.xxx/xx interface=xxxxx
#給某個網卡配置IP,address=你要配的IP/子網掩碼,interface=你選中的網卡的名字

我們現在可以使用winbox連接ROS了,

連接后會提示你激活,不激活就只能用24小時之后失效的測驗版,我演示教程就不再激活了,大家要支持正版(狗頭),

5.2 ROS初始化配置
(1)區分WAN口LAN口并配置網卡名字
單擊“interface”,我因為是虛擬機,我用在VMware中移除某個網卡的方式確定了WAN口和LAN口,物理機實際操作中根據連接的網口來判斷就行了,為了清晰,我分別給網卡設定了名字,只需要改名字,其他的都不動,


(2)配置網卡IP及子網掩碼
單擊“IP-Address-加號-輸入目標網卡IP及子網掩碼”,Network系統會自己填寫,不用管它,

(3)配置網關
單擊“IP-Routes-加號-輸入WAN口網關”,網上好多教程寫的是選擇LAN網卡就行了,我這樣選了之后連不上外網,換成WAN口網關才連上外網,也許是環境不一樣吧,后面再研究了,先輸入WAN口網關這樣用著,

(4)配置DHCP
① 添加DHCP地址池
“IP-Pool-加號-輸入IP范圍”,這個地址池是給LAN口分配IP用的,注意網段和你的LAN口一樣,比如我的LAN口IP是“192.168.20.254”,我輸入的IP范圍是“192.168.20.10-192.168.20.230”,地址池名字隨便寫,然后點OK就行了,

② 配置DHCP服務引數
“IP-DHCP Server-加號-選擇埠、租期、地址池”,

③ 添加NETWORK網路引數
“IP-DHCP Server-加號-輸入對應引數”
Address代表LAN口是哪個網段,子網掩碼是什么,在這里我們必須要跟LAN口地址設定到一個網段內,即"192.168.20.0/24",
Gateway代表內網的網關,把內網地址直接作為內網的網關,即"192.168.20.254",Netmask是內網IP地址的子網掩碼,輸入"24",DNS Servers代表用來做域名決議的服務器地址,我設定為:223.5.5.5和114.114.114.114,

③ 測驗DHCP
備份原始網卡組態檔,然后將測驗機的網卡配置改成DHCP:
cd /etc/sysconfig/network-scripts
cp ifcfg-ens33 ifcfg-ens33.bak #ens33是我的網卡名,不一定一樣
vi ifcfg-ens33

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=b48bd1cf-0816-4c17-9164-02ef7f678cea
DEVICE=ens33
ONBOOT=yes
然后重啟網卡,再查看一下IP地址:
systemctl restart network
ip addr

有IP,則DHCP服務配置成功,
(5)配置全域偽裝
在“IP-Firewall”中,單擊“NAT”標簽頁,加號新建Rule,設定General標簽頁中的Chain為“srcnat”,Action中Action為masquerade,

(6)配置限速策略
ROS一般用腳本限速,假設希望限制“192.168.20.11-192.168.20.230”IP段的所有IP,上行最高512Kbps,下行最高512Kbps,則腳本為:
:for xiansu from 11 to 230 do=
{/queue simple add name=("限速-192.168.20." . $xiansu . "")
target-address=("192.168.20." . $xiansu . "/32")
limit-at=0/0 max-limit=512000/512000 }
# 為了方便看,我用回車分了行,實際執行時不需要分行,

腳本添加后記得選中然后單擊運行,腳本才會開始跑,

在Queues中可查看執行情況:

(7)整體測驗
① 測驗是否正常上網
使用測驗機ping一下DNS,若能通,則ROS系統配置成功,若不通,則需要對照上面步驟排查,

② 測驗限速情況
首先查看一下自己系統的yum源,把yum源改成國內的,規避國外源速度的影響,我這里用的華為源,windows系統可直接測速,具體怎么改我就不再寫了,百度大把大把教程,

測速方法很多,我使用speedtest的測速腳本:
1. pip(不知道為什么,我用wget直接安裝,給權限后用不了,只能用pip):
#沒有pip的下面代碼塊有命令自己裝一下
wget https://bootstrap.pypa.io/get-pip.py --no-check-certificate
python get-pip.py
pip install speedtest-cli
which speedtest-cli #查找測速腳本所在位置,一般是/usr/bin下
cd /usr/bin
./speedtest-cli --list | grep China #查看國內所有節點
./speedtest-cli --server=xxxx --share
# xxxx是節點序號,share是將結果生成html頁面
2. wget:
wget -O speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py
chmod +x speedtest-cli #賦予腳本執行權限
./speedtest-cli --server=xxxx --share
安裝pip:
yum -y install epel-release
yum -y install python-pip
我現在寫這篇CSDN的網路環境很差(寬帶壞了,開的4G熱點),測出來的資料有問題,但是能看出來限速成功了(和上下行無限制相比):

截止現在ROS算是能夠正常作業了,不過現在還很脆弱,防火墻啥的還沒設定,默認埠啥的也沒改,后面再補吧,
我還是一個軟路由小白,教程里肯定有不少在大佬眼里很幼稚的地方,請大佬們有時間的話一定幫我指出來,萬分感謝,
最后,如果感覺寫的還湊合的話,求一個贊,來自陌生人的每個贊都能讓我開心好久~
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/242006.html
標籤:其他
上一篇:TA技術美術學習路線
下一篇:日常求助
