JavaShuo
欄目
標籤
iptables nat 表應用,iptables規則備份和恢復
時間 2019-12-17
標籤
iptables
nat
應用
規則
備份
恢復
欄目
系統網絡
简体版
原文
原文鏈接
iptables nat 表應用
作一個試驗,準備兩臺虛擬機 A,B
A 有準備兩塊網卡,一塊鏈接外網,一塊鏈接內網
B 只准備一塊網卡鏈接內網
目標是讓 B 鏈接外網
要達到這個目標,首先須要讓 A, B兩臺機器能夠通訊
而後讓 A 做爲路由器,這樣 B 就能夠經過A 鏈接外網
如圖,這是兩臺虛擬機
如圖,首先在虛擬機01 這裏點擊 編輯虛擬機設置
如圖,點擊添加
點擊 網絡適配器,而後點 完成
如圖,選擇 網絡適配器 2 ,右邊選項裏面,選擇 LAN 區域
選擇了 LAN 區域後,須要設置一個內網交換機才行
如圖,點擊 LAN區段(S)... 按鍵,出現左邊方框
點擊添加,而後就出現一個自定義名稱的交換機,咱們命名爲 交換機,而後點擊肯定
配置好第二塊網卡,就點擊 肯定
如圖,選擇第二個虛擬機
點擊 編輯虛擬機設置
按照上面的方法添加第二塊網卡,一樣右邊選擇 LAN 區段
下面選擇 交換機,剛纔建立的交換機在這裏能夠直接選擇使用
這樣 01 跟 02 兩臺機器就能夠經過這個交換機進行通訊了
由於 02 這臺電腦按照實驗設計應該是不能鏈接外網的
因此選擇 第一塊網卡,這塊網卡是以前配置好,能夠上外網的
如今要讓它不鏈接網絡,右邊點擊 啓動時鏈接,把原來的 √ 去掉
這樣系統啓動的時候,這塊網卡就不會鏈接網絡了,而後點擊 肯定
啓動虛擬機01,進入系統後,輸入 ifconfig 查看網卡信息
如圖,多了一塊 ens37,這塊網卡目前沒有被分配ip地址
有兩種方法分配 ens37 ip
一種是直接改配置文件,到網卡配置文件的目錄 /etc/sysconfig/network-scripts/
到這個目錄裏面,找到 ens33 的配置文件
如圖,而後 cp 複製一份,重命名爲 ifcfg-ens37
而後編輯該文件,將 ip 地址修改一下
uuid,mac地址 能夠刪除,讓系統從新分配,由於這是 ens33 id和mac,不刪除會衝突
name,device等信息修改一下
這樣就設置了永久的 ip
還有一種方法是設置臨時的ip,這種方法系統重啓以後ip就會消失
如圖, ifconfig + 網卡名稱 + ip地址/子網掩碼位數
這裏子網掩碼位數是 24 表示 24位 1
這個表示子網掩碼,通常是 255.255.255.255 這麼多種組合
換算成二進制就是 1111.... 32個1,也就是有32位數
每一位數能夠是0或者1
設置爲 24 表示 前面有 24位數 都是 1
後面的 8 位數是 0
這樣轉換爲十進制就是 255.255.255.0
8位二進制數有255種組合,最後8位都是0,轉換爲十進制數就是 0
8個1轉換爲十進制數就是 255
因此設置爲24,表明24個1剩餘都是0,總長度就是 32
32-24=8 ,因此剩餘8位就是0
子網掩碼就是 255.255.255.0
還有一點,ens37的ip跟ens33的ip 網段不能同樣
好比 ens33 ip是 192.168.64.128 ,64就是網段
因此 ens37 的第三段不能跟 ens33 一致
因此這裏設置爲 192.168.100.1,100跟64不一致
第二臺虛擬機,由於不能鏈接外網
因此不能使用 xshell 遠程鏈接,須要直接在虛擬機上操做
流程跟 01虛擬機同樣,先設置網卡 ip
02虛擬機的第二塊網卡也是ens37
設置 ip 的方法跟 01虛擬機同樣
也是 複製一份配置文件,而後修更名稱和內容
或者如圖,使用 ifconfig 命令直接改 臨時 ip
這裏設置爲 192.168.100.100/24
如圖,這個命令能夠查看 網卡是否鏈接主機
這裏顯示 ok 就是鏈接沒問題
一樣的命令檢查 o1虛擬機
如圖,在01虛擬機上面使用 ping 192.168.100.100 鏈接 02虛擬機
下面信息顯示 鏈接成功
咱們的目的是,讓01虛擬機做爲路由器,02虛擬機經過01虛擬機的路由器功能上網
全部,首先應該打開 01虛擬機 上面的路由轉發功能
這樣 01虛擬機就會具備路由器功能了
如圖, /proc/sys/net/ipv4/ip_forward 這個文件決定路由轉發功能是否開啓
ip_forward 文件裏面只有一個值,目前默認值爲 0
0 就表示路由轉發功能關閉了
要打開路由轉發功能,就須要把 0 修改成 1
1 就表示打開
如圖, 使用命令 echo "1" > !$ 把原文件的0修改成1
這樣就算打開了 01 虛擬機的端口轉發功能了
而後還須要添加一條規則才能夠實現上網功能
iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o ens33 -j MASQUERADE
使用以上命令,對 nat 表的 POSTROUTING 鏈添加 MASQUERADE 規則
這條規則使 192.168.100.0 網段能夠上網
如圖,這是 虛擬機02 ,須要把虛擬機02 的網關設置一下
由於虛擬機02 是經過 虛擬機01 來上網的
因此 虛擬機01 跟 虛擬機02 鏈接的那塊網卡的 ip 地址
應該設置爲 虛擬機02 的網關
由於 01 轉發的數據從這個ip出來到達 02
02 的訪問請求也是從這個ip出去,這個ip做用就至關於網關了
route -n 查看本機網關信息,目前沒有設置網關
使用 route addd default gw 192.168.100.1 設置默認網關
再檢查 route -n ,能夠看到,網關信息增長了一行,192.168.100.1
而後再 ping 一下不一樣網段的,虛擬機01鏈接外網的網卡 192.168。64.128
能夠 ping 通說明成功了
還有一點,兩臺虛擬機要使用 iptables -F 關閉防火牆,否則可能不能鏈接外網
如今若是要遠程登陸訪問 虛擬機02,仍是作不到的
還須要一些設置,把遠程進來的信息,轉發給 虛擬機02
iptables -t nat -D POSTROUTING -s 192.168.100.0/24 -o ens33 -j MASQUERADE
使用以上命令將以前添加的 nat 表規則刪除以避免影響後續操做
須要載添加兩條規則,分別是把到達 192.168.64.128 的數據轉發到 192.168.100.100
還有就是把 192.168.100.100 發出的數據轉發到 192.168.64.128
iptables -t nat -A PREROUTING -d 192.168.64.128 -p tcp --dport 1122 -j DNAT --to 192.168.100.100:22
上面這條命令就是把 目的地是 192.168.64.128 端口是 1122 的數據包
轉發給 192.168.100.100,端口是 22 的地址
iptables -t nat -A POSTROUTING -s 192.168.100.100 -j SNAT --to 192.168.64.128
上面命令是把 192.168.100.100 發出的數據包 轉發到 192.168.64.128
如圖,創建一個新的會話,主機輸入 虛擬機01 的ip地址,端口設置1122
而後鏈接,成功的話,會直接跳轉到 虛擬機02
這裏也須要 iptables -F 否則不能轉發數據
iptables規則備份和恢復
如圖,使用 service iptables save 能夠保存現有的iptables 保存到 iptables 文件
若是想保存到另外的文件裏面
iptables-save > /tmp/ipt.txt 這樣就能夠把iptables設置保存到 ipt.txt 文件裏面
若是想從 ipt.txt 文件裏面把 iptables 設置 加載回來
如圖,可使用 iptables-restore < /tmp/ipt.txt
這樣就能夠把 ipt.txt 裏面的設置加載到 iptables 裏面
相關文章
1.
iptables NAT /iptables規則備份/恢復
2.
10.19 iptables規則備份和恢復
3.
十、9 iptables規則備份和恢復
4.
【CentOS 7筆記44】iptables nat表和iptables規則備份和恢復,#
5.
日常運維(4)iptables filter案例,iptables nat表應用,iptables規則備份和恢復
6.
iptables規則備份和恢復/firewalld的9個zone
7.
iptables NAT規則
8.
iptables規則備份和恢復 及firewalld用法
9.
10.19 iptables規則備份和恢復 10.20 firewalld的9個zone10.21
10.
26期20180716 iptables規則備份恢復 firewalld zone
更多相關文章...
•
RDF 規則
-
RDF 教程
•
XML 語法規則
-
XML 教程
•
TiDB 在摩拜單車在線數據業務的應用和實踐
•
適用於PHP初學者的學習線路和建議
相關標籤/搜索
iptables
netfilter&iptables
iptables&systemctl
shell+iptables
juniper+iptables
33.iptables
9.iptables
iptables+squid
SQL Server備份恢復
恢復
系統網絡
XLink 和 XPointer 教程
Spring教程
NoSQL教程
應用
0
分享到微博
分享到微信
分享到QQ
每日一句
每一个你不满意的现在,都有一个你没有努力的曾经。
最新文章
1.
.Net core webapi2.1生成exe可執行文件
2.
查看dll信息工具-oleview
3.
c++初學者
4.
VM下載及安裝
5.
win10下如何安裝.NetFrame框架
6.
WIN10 安裝
7.
JAVA的環境配置
8.
idea全局配置maven
9.
vue項目啓動
10.
SVN使用-Can't remove directoryXXXX,目錄不是空的,項目報錯,有紅叉
本站公眾號
歡迎關注本站公眾號,獲取更多信息
相關文章
1.
iptables NAT /iptables規則備份/恢復
2.
10.19 iptables規則備份和恢復
3.
十、9 iptables規則備份和恢復
4.
【CentOS 7筆記44】iptables nat表和iptables規則備份和恢復,#
5.
日常運維(4)iptables filter案例,iptables nat表應用,iptables規則備份和恢復
6.
iptables規則備份和恢復/firewalld的9個zone
7.
iptables NAT規則
8.
iptables規則備份和恢復 及firewalld用法
9.
10.19 iptables規則備份和恢復 10.20 firewalld的9個zone10.21
10.
26期20180716 iptables規則備份恢復 firewalld zone
>>更多相關文章<<