將Centons伺服器變成路由器
最近專案需要測試音視訊弱網傳輸,使用linux 核心TC命令進行網路限制(丟包、亂序、延時、重複幀、包損)。
Linux作業系統中的流量控制器TC(Traffic Control)用於Linux核心的流量控制,主要是通過在輸出埠處建立一個佇列來實現流量控制。
下面主要記錄一下使用指令碼進行環境搭建:
1、先給伺服器配置雙網路卡並配置好IP地址(這一步很重要,後續步驟都需要使用配置的ip地址),並修改改網路卡名稱:Wan口為eth0,Lan口為eth1
1、先安裝DHCP服務,yum -y install dhcp
2、配置DHCP服務:
vi /etc/dhcp/dhcp.conf
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.2 192.168.10.253; #地址池範圍
option broadcast-address 192.168.1.255; #廣播地址
option routers 192.168.1.100; #預設閘道器(一定要配置成Lan口IP)
option domain-name-servers 114.114.114.114, 8.8.8.8; #運營商DNS伺服器
option netbios-name-servers 192.168.1.1; #WINS伺服器
option domain-name lan; #搜尋域
default-lease-time 86400; #預設租約時間,單位為秒
max-lease-time 86400; #最長租約時間,單位為秒
}
3、其餘步驟使用下面sh指令碼進行自動配置
#!/bin/bash
echo "使用前需要先配置電腦Wan口和Lan口的IP,主要Lan口的IP配置,同時修改配置檔案的IP地址"
#echo 停止firewalld服務
systemctl stop firewalld
#echo 禁止firewalld服務自啟動
systemctl disable firewalld
#echo 安裝iptables防火牆和DHCP伺服器
yum -y install iptables-services
iptables -F
#echo 清空nat表
iptables -t nat -F
#echo 預設禁止所有傳入連線修改為接收
iptables -P INPUT ACCEPT
#echo 預設允許所有傳出連線
iptables -P OUTPUT ACCEPT
#echo 預設允許路由轉發(特別注意!!!)
iptables -P FORWARD ACCEPT
#echo 4、開啟系統的IP轉發功能,永久性的
sed -i '$a net.ipv4.ip_forward = 1' /etc/sysctl.conf
#echo 立即更改生效:
sysctl -p /etc/sysctl.conf
#echo 允許DHCP傳入連線,指定Lan口的ip有DHCP服務自動分配
iptables -A INPUT -i eth1 -p udp --dport 67:68 -j ACCEPT
#echo 配置iptables的NAT轉發(重點)意思:接收Lan口指定網段的所有資料
iptables -A FORWARD -s 192.168.1.0/24 -j ACCEPT
#echo 開啟源NAT功能即將來自內網主機的IP轉換為外網IP,將Lan口接收到資料轉發到Wan口
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j SNAT --to 192.168.2.100
echo "==========================配置完成了================================"
#echo 儲存iptables配置
iptables-save > /etc/sysconfig/iptables
#echo 啟動iptables
systemctl start iptables
#echo 開機自動啟動iptables
systemctl enable iptables
#echo 啟動dhcpd
systemctl start dhcpd
#echo 開機自動啟動dhcpd
systemctl enable dhcpd
!:配置中的ip需要根據網路實際配置進行修改,否則會失敗!
4、配置完成後測試,如果在伺服器Lan連線任意裝置可以上網說明配置成功。
相關文章
- 將你的 CentOS 變成 OSPF 路由器CentOS路由器
- 如何將Windows 7變成無線路由器Windows路由器
- 將樹莓派配置成路由器樹莓派路由器
- 將電腦變為無線路由器路由器
- 如何將自己的本地電腦變成可供外網訪問的伺服器伺服器
- 【c語言】將正數變成對應的負數,將負數變成對應的正數C語言
- 使用Map將資料變成自己想要的
- Python中如何將字串變成數字?Python字串
- 物聯網將變成一種服務
- 這三家公司將要改變家庭無線路由器路由器
- PHP-將變數輸出成 array 結構PHP變數
- 將Linux做成路由器Linux路由器
- 將Win10電腦變成藍芽音響Win10藍芽
- 東北公司使用新套件將幾周變成幾天套件
- 美媒:黑客能將揚聲器變成聲學武器黑客
- Stata-將變數名稱替換成標籤變數
- 怎樣將class檔案變成.exe檔案?薦
- 無伺服器Serverless將變革工作流BPM伺服器Server
- 伺服器路由器的作用伺服器路由器
- RPA與AI的融合,將會變成什麼樣?AI
- 如何將人工智慧的“炒作熱”真正變成“落地熱”?人工智慧
- 正將科幻小說變成現實的公司Top10
- 人臉識別技術,將電影變成現實
- 摩根:蘋果Nano將變手機 成為廉價版iPhone蘋果NaNiPhone
- 程式設計師如何將一天變成28小時程式設計師
- WPS 2009將文件處理變成填字遊戲遊戲
- 蘋果新專利曝光:將Home鍵轉變成遊戲手柄蘋果遊戲
- Ubuntu for Android 將你的手機變成強大的桌面UbuntuAndroid
- 將專案經理轉變成企業領導(1)(轉)
- 將專案經理轉變成企業領導(2)(轉)
- 在Python中將字典轉為成員變數的方法Python變數
- 將UIView轉成UIImage,將UIImage轉成PNG/JPGUIView
- 將MacBook作為無線路由器Mac路由器
- 瑞星釋出路由器安全報告無線路由器安全成高危區路由器
- 假如騰訊阿里消失了,這個社會將變成什麼樣?阿里
- 如何將過程程式碼變成物件導向的程式碼? - WLODEK物件
- jmeter使用問題——將介面返回變數儲存成csv檔案JMeter變數
- 一學生將海洋入侵物種變成3D列印材料3D