區域網主機共享單個公網ip位址接入internet (私有ip不能在internet中正常路由)
修改資料報的源位址
echo 1 >/proc/sys/net/ipv4/ip_forward或sysctl -w net.ipv4.ip forward=1
vim/etc/ sysctl. confnet.ipv4.ip_forward = 1 #將此行寫入配置檔案
sysctl -p #讀取修改後的配置
iptables -t nat -a postrouting -s 192.168.229.0/24 -o ens36 j snat --to 12.0.0.1或iptables -t nat -a postrouting -s 192.168.229.0/24 -o ens36 -j snat --to-source 12.0.0.1-12.0.0.10
-s 內網ip
-o 出站外網網絡卡
source 外網ip或位址池
iptables -t nat -a postrouting -s 192.168.80.0/24 -o ens33 -j masquerade
區域網的伺服器能夠訪問internet
閘道器的外網位址有正確的dns解析記錄
linux閘道器開啟ip路由**
vim/etc/sysctl.confnet.ipv4.ip_forward = 1
sysctl -p
#把從ens33進來的要訪問web服務的資料報目的位址轉換為 192.168.80.11
iptables -t nat -a prerouting -i ens33 -d 12.0.0.1 -p tcp--dport 80 -j dnat --to 192.168.80.11
或
iptables -t nat -a prerouting -i ens33 -d 12.0.0.1 -p tcp--dport 80-j dnat --to-destination 192.168.80.11
入站|外網網絡卡 | 外網 內網伺服器ip
iptables -t nat -a prerouting -i ens33 -p tcp --dport 80-j dnat --to 192.168.80.11-192.168.80.20
#發布區域網內部的openssh伺服器, 外網主機需使用250埠進行連線iptables-t nat -a prerouting -i ens33 -d 12.0.0.1 -p tcp--dport 250-jdnat --to 192.168.80.11:22
#在外網環境中使用ssh測試
ssh -p 250 [email protected]
yum -yinstall net-tools
#若沒有ifconfig 命令可提前使用yum 進行安裝
ifconfig ens33
注意:使用dnat時,同時還有配合snat使用,才能實現響應資料報的正確返回
小知識擴充套件:
• 主機型防火牆主要使用input、output鏈,設定規則時一-般要詳細的指定到埠
• 網路型防火牆主要使用forward鏈,設定規則時很少去指定到埠,一般指定到ip位址或者到網段即可
iptables-s**e >/opt/ipt.txt
iptables-restoreopt/ipt.txt
systemctl stop iptables #停止iptables服務會清空掉所有表的規則systemctl start iptables
tcpdump tcp-i ens33 -t -s 0 -c 100 and dst port ! 22 and src net 192.168.1.0/24 -w ./target.cap
(1)tcp∶ ip icmp arp rarp 和 tcp、udp、icmp這些選項等都要放到第乙個引數的位置,用來過濾資料報的型別
(2)-i ens33 ∶只抓經過介面ens33的包
(3)-t ∶不顯示時間戳
(4)-s 0 ∶ 抓取資料報時預設抓取長度為68位元組。加上-s 0 後可以抓到完整的資料報
(5)-c 100 ∶只抓取100個資料報
(6)dst port ! 22 ∶不抓取目標埠是22的資料報
(7)src net 192.168.1.0/24 ∶資料報的源網路位址為192.168.1.0/24。net:網段,host:主機
(8)-w ./target.cap ∶ 儲存成cap檔案,方便用ethereal (即wireshark)分析
NAT中SNAT與DNAT的區別與應用
nat net address trancelate 是將區域網裡的內部位址 如192.168.0.x 轉換成公網 internet 上合法的ip位址 如202.202.12.11 以使內部位址能像有公網位址的主機一樣上網。這個優於 伺服器,能做直接訪問外部ip位址,但nat往往會過濾掉部分udp資...
SNAT和DNAT的區別
從定義來講它們乙個是源位址轉換,乙個是目標位址轉換。都是位址轉換的功能,將私有位址轉換為公網位址。要區分這兩個功能可以簡單的由連線發起者是誰來區分 snat 內部位址要訪問公網上的服務時 如web訪問 內部位址會主動發起連線,由路由器或者防火牆上的閘道器對內部位址做個位址轉換,將內部位址的私有ip轉...
volatile的應用與原理
背景 多執行緒開發中,不少見 volatile,其很典型的標記就是可見性,接下來一起了解一下其原理吧 定義volatile 是輕量級的 synchronized,它在多處理器開發中保證了共享變數的 可見性 可見性的意思是乙個執行緒修改乙個共享變數時,另外乙個執行緒能讀到這個修改的值 volatile...