GRE(Generic Routing Encapsulation,通用路由封裝)協定是對某些網路層協定(如IP和IPX)的資料包文進行封裝,使這些被封裝的資料包文能夠在另一個網路層協定(如IP)中傳輸。GRE採用了Tunnel(隧道)技術,是V_P_N(Virtual Private Network)的第三層隧道協定。
GRE實現機制簡單,對隧道兩端的裝置負擔小。
GRE隧道可以通過IPv4網路連通多種網路協定的本地網路,有效利用了原有的網路架構,降低成本。
GRE隧道擴充套件了跳數受限網路協定的工作範圍,支援企業靈活設計網路拓撲。
GRE隧道可以封裝組播資料,和IPSec結合使用時可以保證語音、視訊等組播業務的安全。
GRE隧道支援使能MPLS LDP,使用GRE隧道承載MPLS LDP報文,建立LDP LSP,實現MPLS骨幹網的互通。
GRE隧道將不連續的子網連線起來,用於組建V_P_N,實現企業總部和分支間安全的連線。
使用GRE構建一個簡單v_p_n,使用使用者端能正常存取(Windows不支援GRE,所以使用兩個Linux主機)
實驗拓補
主機名 | IP地址 |
---|---|
client | eth3 201.1.2.10 |
proxy | eth0 192.168.19.130 |
eth3 201.1.2.5 |
1)檢視計算機當前載入的模組
lsmod #顯示模組列表lsmod | grep ip_gre #確定是否載入了gre模組
2)載入模組ip_gre
modprobe ip_gre
3)檢視模組資訊
modinfo ip_gre # /lib/modules/4.18.0-240.el8.x86_64/kernel Linux所有的模組都在這裡 #find / -name "*.ko*" | wc -l #2501 #我們的Linux系統內建模組有2501個,本人的Linux系統為Redhat8.3 #rmmod 模組名 關閉模組
1)建立隧道
ip tunnel add tun0 mode gre remote 201.1.2.5 local 201.1.2.10 #ip tunnel add 建立隧道(隧道名稱為tun0),ip tunne help可以檢視幫助 #mode設定隧道模式 #local後面跟本機的IP地址,remote後面時與其他主機建立隧道的IP
2)啟用該隧道(類似於網路卡啟動)
ip a s #檢視本機全部網路卡資訊 一般新增的隧道是最後一個,且預設關閉 ip link show ip link set tun0 up #啟用隧道 ip link show
3)為V_P_N設定隧道IP地址
ip a s ip addr add 10.10.10.10/24 peer 10.10.10.5/24 dev tun0 #為隧道tun0設定本地ip(10.10.10.10/24) #隧道對面的主機ip的隧道IP為(10.10.10.5/24) ip a s #檢視IP是否新增成功
4)關閉防火牆
systemctl stop firewalld
1)檢視計算機當前載入的模組,並進行載入
lsmod #顯示模組列表lsmod | grep ip_gre #確定是否載入了gre模組modprobe ip_gre
2)建立隧道
ip tunnel add tun0 mode gre remote 201.1.2.10 local 201.1.2.5
3)啟用該隧道(類似於網路卡啟動)
ip link set tun0 up #啟用隧道 ip link show
4)為VPN設定隧道IP地址
ip addr add 10.10.10.5/24 peer 10.10.10.10/24 dev tun0 ip a s
5)關閉防火牆
systemctl stop firewalld
6)開啟路由轉發(軟路由)
echo "1" > /proc/sys/net/ipv4/ip_forward #1 開啟路由轉發 #0 關閉路由轉發 #路由轉發開啟之後,別人可以通過存取這個伺服器,通過伺服器轉發,去存取別的東西
相關推薦:《Linux視訊教學》
以上就是Linux環境下GRE的部署(整理分享)的詳細內容,更多請關注TW511.COM其它相關文章!