999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

在linux平臺上用iptables實現(xiàn)數(shù)據(jù)轉發(fā)

2012-10-27 07:05:48潘永才張尚徽王富單文斌湖北大學物理學與電子技術學院湖北武漢430062
中國科技信息 2012年4期
關鍵詞:嵌入式設置

潘永才 張尚徽 王富 單文斌湖北大學物理學與電子技術學院,湖北 武漢 430062

在linux平臺上用iptables實現(xiàn)數(shù)據(jù)轉發(fā)

潘永才 張尚徽 王富 單文斌
湖北大學物理學與電子技術學院,湖北 武漢 430062

網(wǎng)絡地址轉換(NAT)可以實現(xiàn)透明代理、端口重定向和負載平衡等功能,iptables具有NAT功能,本文敘述了NAT的工作原理,然后介紹了如何利用iptables的nat功能實現(xiàn)數(shù)據(jù)轉發(fā)功能。

NAT;Iptables; IP映射;數(shù)據(jù)轉發(fā)

NAT;Iptables; IP Map;Data Forward

引言

由于生活和工業(yè)上的特殊應用,經(jīng)常需要數(shù)據(jù)轉發(fā)和透傳功能,路由器可以實現(xiàn)數(shù)據(jù)轉發(fā),但實際生活中是在某一平臺上做數(shù)據(jù)轉發(fā)同時實現(xiàn)其它功能,所以要自己開發(fā)具有數(shù)據(jù)轉發(fā)功能的平臺。在應用開發(fā)中可以使用scoket編程實現(xiàn)數(shù)據(jù)轉發(fā),但這樣做費時費力,而且轉發(fā)的穩(wěn)定性不敢保證。NAT可以對數(shù)據(jù)包的源IP地址、目的IP地址、源端口、目的端口等進行改寫[1],從而可以實現(xiàn)數(shù)據(jù)轉發(fā)。Iptables具有nat功能,iptables是linux系統(tǒng)自帶的防火墻系統(tǒng),利用iptables實現(xiàn)數(shù)據(jù)轉發(fā),不但簡單而且穩(wěn)定性很好。

1.NAT的工作原理

NAT的基本原理:改變IP包頭,使目的地址、源地址或兩個地址在包頭中被不同地址替換。

NAT的工作原理:下圖所示,是兩個公司通過Internet網(wǎng)絡互相交流,是NAT的典型應用,通過它來認識NAT工作原理。我們清楚,在局域網(wǎng)內(nèi)部的私有地址是不能訪問外網(wǎng)的,必須轉換成公有地址才可以訪問Internet,我們以PC1: 192. 168.2.4訪問User1: 192.168.2.4為例說明訪問過程。

1.1 PC1向RA(網(wǎng)關)發(fā)送請求,告訴自己的私有IP地址和MAC地址,并且要求自己要到達User1主機。

1.2 RA收到請求后,把PC1的源IP地址進行轉換,變成內(nèi)部全局地址,即公有地址202.16.58.1,并且為PC1指定一個隨機產(chǎn)生的端口號,發(fā)送到Inter網(wǎng)。

1.3 Inter網(wǎng)絡收到了內(nèi)部全局IP地址的請求,進行路由選擇,被RB接收,RB通過查看RA發(fā)送過來的內(nèi)部全局IP地址和端口號等信息,直接發(fā)送給192.168. 2.4網(wǎng)絡的網(wǎng)關。

1.4 網(wǎng)關路由器RB收到了信息,根據(jù)對方發(fā)過來的目標主機信息,把數(shù)據(jù)傳輸給 User1主機。

1.5 根據(jù)ICMP協(xié)議,user1主機需要回應,對數(shù)據(jù)進行相應的處理,把數(shù)據(jù)封裝后發(fā)送給網(wǎng)關。

1.6 網(wǎng)關把user1的私有IP地址轉換成外部局部IP地址,即公有地址202.16. 58.2,通過這個公有地址,轉發(fā)到路由器RA。

1.7 RA收到數(shù)據(jù)包,查看自己緩存里的對應的主機和端口,并對PC1進行轉發(fā)。

圖1所示是兩個公司通過Internet網(wǎng)絡互相交流,實際過程也就是ip映射來進行數(shù)據(jù)轉發(fā)。

2.iptables數(shù)據(jù)轉發(fā)腳本 [2][4]

上面演示了NAT工作原理,現(xiàn)在介紹如何用iptables實現(xiàn)上面過程,為了便于結果的驗證,筆者把中間的internet公網(wǎng)ip,換成局域網(wǎng)ip,原理上還是一樣的。

首先我們需要一臺l i n u x的雙網(wǎng)卡PC/嵌入式平臺。接下來按照圖2所示,搭建實驗環(huán)境。設置A、B網(wǎng)段的子網(wǎng)掩碼為255.255.255.0, PC1的IP地址為192. 168.1.4, User1的IP地址為192.168.2.4,這樣兩個網(wǎng)段的機器是不能相互訪問的?,F(xiàn)要使PC1和User1互相訪問,主要實現(xiàn)腳本如下。

2.1 Linux平臺網(wǎng)口1接A網(wǎng)段,網(wǎng)口2接B網(wǎng)段。設置兩個網(wǎng)卡的ip,命令如下:

ifconfig eth0192.168.1.2netmask 255.255.255.0up //設置A網(wǎng)段任意可用ip,命令根據(jù)具體平臺改變

ifconfig eth1192.168.2.2netmask 255.255.255.0up //設置B網(wǎng)段任意可用ip

2.2 實現(xiàn)linux數(shù)據(jù)包轉發(fā),把文件/ proc/sys/net/ipv4/ip_forward的值設定為1,命令如下:echo "1" > /proc/sys/net/ ipv4/ip_forward。

2.3 清空原有的iptables的表(主要是filter表和nat表)和表中的鏈:

iptables -F

iptables -X

iptables -Z

iptables -F -t nat

iptables -X -t nat

iptables -Z -t nat

2.4 為了不影響其他機子訪問linux平臺,給網(wǎng)卡添加ip地址,這樣,訪問A網(wǎng)段192.168.1.3的時候,就會轉發(fā)到B網(wǎng)段的192.168.2.4上去,而訪問192.168. 1.2則不會受影響。

ip address add 192.168.1.3 brd + dev eth0

ip address add 192.168.2.3 brd + dev eth1

2.5 設置filter表中三個鏈的默認規(guī)則,進入(INPUT)發(fā)出(OUTPUT)都是允許ACCE PT,轉發(fā)(FO RWAR D)是丟棄DROP。

iptables -P INPUT ACCEPT

iptables -P OUTPUT ACCEPT

iptables -P FORWARD DROP

2.6 設置允許對機器192.168.1.4和192.168.2.4的訪問

iptables -A FORWARD -s 192. 168.1.4-j ACCEPT

iptables -A FORWARD -d 192. 168.1.4-j ACCEPT

iptables -A FORWARD -s 192. 168.2.4-j ACCEPT

iptables -A FORWARD -d 192. 168.2.4-j ACCEPT

2.7 下面命令的意義是nat標的三條鏈默認接受任何數(shù)據(jù)傳輸

iptables -t nat -P PREROUTING ACCEPT

iptables -t nat -P POSTROUTING ACCEPT

iptables -t nat -P OUTPUT ACCEPT

2.8 真正實現(xiàn)地址轉換的語句,意義為:在PREROUTING鏈中(也就是剛進入lin ux服務器的數(shù)據(jù)包),將目的地址為192.168.1.3的數(shù)據(jù)包進行修改,使得其目的地址變?yōu)?192.168.2.4;在POSTROUTING鏈中(要送出linux服務器的數(shù)據(jù)包),將源地址為192.168.2.4的數(shù)據(jù)包的源地址改為192.168.1.3[3];

iptables -t nat -A PREROUTING -d 192.168.1.3-j DNAT --to 192. 168.2.4

iptables -t nat -A POSTROUTING -s 192.168.2.4-j SNAT --to 192. 168.1.3

iptables -t nat -A PREROUTING -d 192.168.2.3-j DNAT --to 192. 168.1.4

iptables -t nat -A POSTROUTING -s 192.168.1.4-j SNAT --to 192. 168.2.3

圖1

圖2

自此已經(jīng)完成腳本的編寫,如果上圖中間的平臺為PC機,那么直接執(zhí)行上述腳本,PC1和User1就可以互相訪問。比如:PC1要ping User1,在PC1終端執(zhí)行ping 192.168.1.3實際上ping的就是User1,類似的User1訪問PC1也是通過訪問192. 168.2.3來轉發(fā)實現(xiàn)。如果上圖中間平臺為嵌入式平臺,那么還要進行iptables移植操作。Iptables移植過程包括移植交叉編譯支持iptables內(nèi)核和移植交叉編譯的iptables程序兩部分,在此不做詳細敘述。

3.實驗結果

筆者在裝有l(wèi)inux系統(tǒng)PC平臺和嵌入式平臺都做了測試。

PC平臺:選用裝有l(wèi)inux系統(tǒng)的筆記本,筆記本有線網(wǎng)連接A網(wǎng)段、無線網(wǎng)連接B網(wǎng)段,相應的上述腳本設置IP命令的網(wǎng)卡eth1換成wlan0。

嵌入式平臺:選用SBC6020(SBC6020具有雙網(wǎng)卡),SBC6020原始內(nèi)核和文件系統(tǒng)不支持iptables,所以要移植交叉編譯過的支持iptables的內(nèi)核、和移植交叉編譯的iptables和自己編寫iptables轉發(fā)腳本到嵌入式平臺。

依照圖2連接好各硬件平臺,運行iptables轉發(fā)腳本,使用PC平臺和嵌入式平臺效果一樣,測試結果如下:

A網(wǎng)段pc1(IP:192.168.1.4)通過終端telnet 192.168.1.3結果登錄到B網(wǎng)段User1(IP:192.168.2.4)的機子上,在pc1上ping 192.168.1.3,在User1上用Wireshark軟件可以捕獲到由開發(fā)板IP:192.168.2.3轉發(fā)過來的消息,這些足以說明通過以上方法實現(xiàn)了數(shù)據(jù)轉發(fā)。為了驗證數(shù)據(jù)轉發(fā)的可靠性,我通過在pc1上安裝視頻監(jiān)控客戶端,在客戶端上添加IP為192.168.1.3的設備,把User1設為IP Camera (IP:192.168.2.4),所有設置好以后,pc1機子上的客戶端可以預覽和控制IP Camera (IP:192.168.2.4),通過長時間測試,視頻轉發(fā)不丟幀,非常穩(wěn)定。

[1]阮元生,陶虹才,林霞.網(wǎng)絡地址轉換技術及其在校園網(wǎng)中的應用.現(xiàn)代計算機[J],2004(2):47~50

[2](美)Michael Rash著;陳健譯. Linux防火墻[M].北京:人民郵電出版社,2009

[3]張金良,用 iptables 實現(xiàn) NAT. 唐山師范學院學報[J],2007.29(2):74~76

[4]Rusty Russell.Linux 2.4Nat HOWTO.2000(5)

In the Linux Platform to Realize Data Forwarding Based on Iptables

Network Address Translation(NAT) would allow hosts in a private network to transparently access the external network,which has the function of port redirection and load balance. Iptables have NAT function.This paper discusses the mechanism of NAT, and illustrates how to use Iptables on linux platform to achieve data forwarding.

10.3969/j.issn.1001-8972.2012.04.026

猜你喜歡
嵌入式設置
中隊崗位該如何設置
少先隊活動(2021年4期)2021-07-23 01:46:22
TS系列紅外傳感器在嵌入式控制系統(tǒng)中的應用
電子制作(2019年7期)2019-04-25 13:17:14
7招教你手動設置參數(shù)
嵌入式系統(tǒng)通信技術的應用
電子制作(2018年18期)2018-11-14 01:48:16
搭建基于Qt的嵌入式開發(fā)平臺
嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應用
本刊欄目設置說明
中俄臨床醫(yī)學專業(yè)課程設置的比較與思考
艦船人員編制的設置與控制
Altera加入嵌入式視覺聯(lián)盟
主站蜘蛛池模板: 国产精品自拍合集| 久精品色妇丰满人妻| jizz在线观看| 天堂av综合网| 天堂岛国av无码免费无禁网站 | 国产亚洲视频播放9000| vvvv98国产成人综合青青| 亚洲综合极品香蕉久久网| 亚洲国产欧美目韩成人综合| 国产成人做受免费视频| 中文字幕人成乱码熟女免费| 国产精品久久久久久久久久98 | 亚洲一区二区在线无码| 日韩在线视频网站| 国产一区二区影院| 天天色综合4| 国产精品无码一二三视频| 毛片网站免费在线观看| 亚洲人精品亚洲人成在线| 亚洲码一区二区三区| 一级毛片免费观看不卡视频| 99久久精品免费看国产免费软件| 免费毛片全部不收费的| 制服丝袜 91视频| YW尤物AV无码国产在线观看| 国产高清色视频免费看的网址| 中美日韩在线网免费毛片视频| 99在线观看免费视频| 国产女人在线观看| 国产9191精品免费观看| 99re在线观看视频| 亚洲欧美在线精品一区二区| 国产喷水视频| 国产欧美精品一区二区| 在线免费无码视频| 亚洲欧美极品| 亚洲福利片无码最新在线播放| 亚洲Va中文字幕久久一区 | 四虎影视国产精品| 欧美不卡二区| 波多野结衣中文字幕一区二区| 91精品国产无线乱码在线| 亚洲第一视频网| 精品人妻一区二区三区蜜桃AⅤ| 成人国产免费| 爽爽影院十八禁在线观看| 亚洲精品第一页不卡| 日韩一级二级三级| 91亚洲国产视频| аⅴ资源中文在线天堂| 国产产在线精品亚洲aavv| 亚洲午夜综合网| 久久精品66| 九色在线视频导航91| 91娇喘视频| 69av免费视频| 欧美有码在线观看| 成人免费网站久久久| 欧美一级高清免费a| 成人免费网站久久久| 国产 日韩 欧美 第二页| 三级毛片在线播放| 欧美日韩免费| 国产一区成人| 妇女自拍偷自拍亚洲精品| Aⅴ无码专区在线观看| 国产在线精品网址你懂的| 国产精品一区二区在线播放| www.狠狠| 国产经典免费播放视频| 99热这里都是国产精品| 国产精品久久精品| 亚洲第一区精品日韩在线播放| 精品中文字幕一区在线| 日本人又色又爽的视频| 欧美国产在线一区| 人妻中文久热无码丝袜| 欧美综合一区二区三区| 精品国产一区二区三区在线观看| 国产丝袜精品| 亚洲永久视频| 日韩性网站|