中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

net轉(zhuǎn)換vb代碼,vb·net

廣域網(wǎng)實現(xiàn)p2p文件傳輸 如何實現(xiàn)nat穿透 求java或C++源代碼

假設(shè)有兩臺分別處于各自的私有網(wǎng)絡(luò)中的主機:A和B;N1和N2是兩個NAT設(shè)備;S是一個使用了一個眾所周知的、從全球任何地方都能訪問得到的IP地址的公共服務(wù)器

讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:申請域名、虛擬空間、營銷軟件、網(wǎng)站建設(shè)、沙雅網(wǎng)站維護、網(wǎng)站推廣。

步驟一:A和B分別和S建立UDP連接;NAT設(shè)備N1和N2創(chuàng)建UDP轉(zhuǎn)換狀態(tài)并分配臨時的外部端口號

步驟二:S將這些端口號傳回A和B

步驟三:A和B通過轉(zhuǎn)換好的端口直接聯(lián)系到對方的NAT設(shè)備;NAT設(shè)備則利用先前創(chuàng)建的轉(zhuǎn)換狀態(tài)將分組發(fā)往A和B

源碼已發(fā)送請查收

一下是關(guān)于防火墻NAT(地址轉(zhuǎn)換)功能的代碼,請幫我解釋一下,希望能每一句都解釋一下,謝謝!

ip nat inside source list 訪問列表標號 pool 內(nèi)部合法地址池名字

ip nat inside destination static10.106.1.16 172.1.1.15

將外部局部地址轉(zhuǎn)換為外部全局地址

nat inside destination static tcp 10.106.1.16 21 172.1.1.11 21

將外部局部端口21轉(zhuǎn)換為外部全局端口21

在示例中好理解,建議結(jié)合實際操作好掌握。以下網(wǎng)上找的。。。

NAT 具體命令理解

1,由內(nèi)向外的轉(zhuǎn)換,在路由器的inside口處發(fā)生了NAT轉(zhuǎn)換行為

r1-2514(config)#ip nat inside ?

destination Destination address translation

source Source address translation

從上面可以看出,在inside邊可以對數(shù)據(jù)包中的源地址或者目標地址進行轉(zhuǎn)換.

r1-2514(config)#ip nat inside source ?

list Specify access list describing local addresses

route-map Specify route-map

static Specify static local-global mapping

從上面可以看出,針對源地址進行轉(zhuǎn)換可以使用acl 或者 route-map來表述一個本地地址,意思是數(shù)據(jù)包中源地址符合這些的都要被轉(zhuǎn)換. 也可以使用static進行靜態(tài)映射,指定一個靜態(tài)的從本地到全局的映射.

r1-2514(config)#ip nat inside source list 1 ?

interface Specify interface for global address

pool Name pool of global addresses

從上面輸出可以看出接下來要給一個全局地址,數(shù)據(jù)包中的源地址將被這個全局地址替代.

對于靜態(tài)映射,還可以指定協(xié)議 端口號:

When translating addresses to an interface's address, outside-initiated connections to services on the inside network (like mail) will require additional configuration to send the connection to the correct inside host. This command allows the user to map certain services to certain inside hosts.

ip nat inside source static { tcp | udp } localaddr localport globaladdr globalport

Example:

ip nat inside source static tcp 192.168.10.1 25 171.69.232.209 25

In this example, outside-initiated connections to the SMTP port (25) will be sent to the inside host 192.168.10.1.

在inside邊對目標進行轉(zhuǎn)換:

r1-2514(config)#ip nat inside destination ?

list Specify access list describing global addresses

從上面輸出可以看出,路由器要求輸入一個表示全局地址的ACL

r1-2514(config)#ip nat inside destination list 1 ?

pool Name pool of local addresses

pool Name pool of local addresses

接著要求輸入一個本地地址池

所以這是一個針對從outside向inside方向數(shù)據(jù)的NAT,凡是在這個方向數(shù)據(jù)包中目標地址符合ACL描述的全部被轉(zhuǎn)換成POOL中的本地地址.這可以被用來進行TCP的負載均衡,即外部都請求同一個全局地址,而在路由器的inside邊,這些請求的目標地址全部被轉(zhuǎn)換成地址池中的地址,而且是循環(huán)使用地址池中的地址,從而達到負載均衡,但是這種方法只適合TCP流,同時不適宜用在WEB服務(wù)的負載均擔(dān)上.詳細解釋看這里:

Destination Address Rotary Translation

A dynamic form of destination translation can be configured for some outside-to-inside traffic. Once a mapping is set up, a destination address matching one of those on an access list will be replaced with an address from a rotary pool. Allocation is done in a round-robin basis, performed only when a new connection is opened from the outside to the inside. All non-TCP traffic is passed untranslated (unless other translations are in effect).

This feature was designed to provide protocol translation load distribution. It is not designed nor intended to be used as a substitute technology for Cisco's LocalDirector product. Destination address rotary translation should not be used to provide web service load balancing because, like vanilla DNS, it knows nothing about service availability. As a result, if a web server were to become offline, the destination address rotary translation feature would continue to send requests to the downed server.

2.由外向內(nèi),在OUTSIDE邊發(fā)生的行為:

r1-2514(config)#ip nat outside ?

source Source address translation

從上面可以看出在OUTSIDE邊,只能對數(shù)據(jù)包中的源地址轉(zhuǎn)換

r1-2514(config)#ip nat outside source ?

list Specify access list describing global addresses

route-map Specify route-map

static Specify static global-local mapping

從上面可以看出接下來路由器要求給定一個全局地址的描述,可以是ACL route-map 或者 靜態(tài)的.

r1-2514(config)#ip nat outside source list 1 ?

pool Name pool of local addresses

從上面可以看出,路由器接著又要求給定一個本地地址,這說明 這個命令是對從外到內(nèi)的數(shù)據(jù)包,進行源地址字段的替換,它將外部全局地址轉(zhuǎn)換成內(nèi)部地址(內(nèi)部本地或者內(nèi)部全局,內(nèi)部本地和內(nèi)部全局可以相同也可以不同)

ip nat outside source { list acl pool name | static global-ip local-ip }

The first form (list..pool..) enables dynamic translation. Packets from addresses that match those on the simple access list are translated using local addresses allocated from the named pool.

The second form (static) of the command sets up a single static translation.

一個例子:

CONFIGURATION EXAMPLES

The following sample configuration translates between inside hosts addressed from either the 192.168.1.0 or 192.168.2.0 nets to the globally-unique 171.69.233.208/28 network.

ip nat pool net-20 171.69.233.208 171.69.233.223 netmask netmask 255.255.255.240

ip nat inside source list 1 pool net-20

!

interface Ethernet0

ip address 171.69.232.182 255.255.255.240

ip nat outside

!

interface Ethernet1

ip address 192.168.1.94 255.255.255.0

ip nat inside

!

access-list 1 permit 192.168.1.0 0.0.0.255

access-list 1 permit 192.168.2.0 0.0.0.255

The next sample configuration translates between inside hosts addressed from the 9.114.11.0 net to the globally unique 171.69.233.208/28 network. Packets from outside hosts addressed from 9.114.11.0 net (the "true" 9.114.11.0 net) are translated to appear to be from net 10.0.1.0/24.

ip nat pool net-20 171.69.233.208 171.69.233.223 netmask netmask 255.255.255.240

定義一個名稱為 net-20的內(nèi)部全局地址池

ip nat pool net-10 10.0.1.0 10.0.1.255 netmask netmask 255.255.255.0

定義一個名稱為net-10的外部本地地址池

ip nat inside source list 1 pool net-20

ip nat outside source list 1 pool net-10

注意inside /outside全部調(diào)用了list 1 這說明 內(nèi)外兩邊的源地址是重疊地址,通過將內(nèi)部的源地址轉(zhuǎn)換成net-20中地址和外部的9.114.11.0網(wǎng)絡(luò)通信。將外部的源地址轉(zhuǎn)換成net-10中的地址來與內(nèi)部這邊的9.114.11.0網(wǎng)絡(luò)通信

!

interface Ethernet0

ip address 171.69.232.182 255.255.255.240

ip nat outside

!

interface Ethernet1

ip address 9.114.11.39 255.255.255.0

ip nat inside

!

access-list 1 permit 9.114.11.0 0.0.0.255

VB經(jīng)典試上機講解STATICBAVARINAT

Private?Sub?Command1_Click()

Dim?b?As?Variant,?a?As?Variant

b?=?Array(1,?3,?5,?7,?9)

For?i?=?0?To?(5?-?1)?\?2

a?=?b(i)

b(i)?=?b(4?-?i)

b(4?-?i)?=?a

Next?i

For?i?=?0?To?4

Print?b(i)

Next?i

End?Sub

代碼你沒給全,我寫了個

VB如何寫內(nèi)外網(wǎng)聊天軟件

這個分幾種情況的

先說說前提

聊天軟件需要一個服務(wù)器存放客戶端列表吧

只要客戶端是在線的,那客戶端與服務(wù)端必須是處于連接狀態(tài)(這樣服務(wù)器就可以作為客戶端的中間人)

在這里Server(為服務(wù)端),Client A(客戶端1)Client B(客戶端2)

1,Client A是外網(wǎng),Client B是外網(wǎng) 這種情況很簡單,Client A只要從服務(wù)器端得到Client B的信息(IP與登記的端口)就能夠建立連接

2,Client A是外網(wǎng),Client B是內(nèi)網(wǎng) 這種情況稍復(fù)雜,Client A連接Client B會失敗,這時,Client A向Server發(fā)出請求,這時,Server通知Client B,讓Client B連接Client A.. 因為Client A是外網(wǎng)機器,所以這樣也就建立連接了

3,Client A與Client B都在內(nèi)網(wǎng),p2p關(guān)鍵是在這里,

當Client A連接Client B失敗,Client A向Server發(fā)出請求,Server通知Client B對Client A進行連接,這時Client B他能連接上Client A!但是,如果剛才Client A沒有連接Client B,那現(xiàn)在的Client B就連接不上Client A!反之:這里重新再來啊,Client B連接Client A失敗,Client B向Server發(fā)出請求,Server通知Client A連接Client B,這時Client A也能連接上Client A!

在這里需要說一下NAT(網(wǎng)絡(luò)地址轉(zhuǎn)換),就是當內(nèi)網(wǎng)用戶連接外網(wǎng)時,NAT可以可以將內(nèi)網(wǎng)地址轉(zhuǎn)換成公網(wǎng)的IP地址與外網(wǎng)進行通信,但外網(wǎng)有數(shù)據(jù)返進入內(nèi)網(wǎng)時,有兩種可能(如果前面內(nèi)網(wǎng)有向這個外網(wǎng)地址發(fā)送過數(shù)據(jù)包,那么NAT會把這個外網(wǎng)的連接轉(zhuǎn)換為剛剛發(fā)送過數(shù)據(jù)包的內(nèi)網(wǎng)地址)

再回來說前面的,Client A為什么會連接Client B失敗?,因為Client A的數(shù)據(jù)包到達Client B的NAT時被丟棄了,而這時,Client B為什么又如何能連接Client A成功呢,因為當Client B的數(shù)據(jù)包到達Client A的NAT時,NAT檢測到剛剛Client A有發(fā)送過數(shù)據(jù)包到Client B,這個時候NAT會將這個連接轉(zhuǎn)換到Client A上去... 這樣就連接成功了

說著我都有點暈了.不知道你看著會不會暈..- -!看著暈慢慢看吧..CSDN中有VB版的UDP打洞例子,你找下...

請問VB怎樣獲取本機外網(wǎng)動態(tài)的IP地址?。ú皇峭ㄟ^訪問ip138網(wǎng)頁的方式獲取)

我們知道內(nèi)網(wǎng)ip和外網(wǎng)ip可能不同,這涉及到“網(wǎng)絡(luò)地址轉(zhuǎn)換”(NAT)。

事實上,*只有*和公網(wǎng)聯(lián)絡(luò)才有可能獲取外網(wǎng)ip地址,直接用winsock的localip屬性,或者ipconfig之類的方法(在內(nèi)外網(wǎng)ip不同的情況下)獲取的都是內(nèi)網(wǎng)ip!

獲取外網(wǎng)ip可以用你說的ip138網(wǎng)頁的方式,可以通過winsock、inet、xmlhttp、webbrowser等組件來獲取遠程服務(wù)器返回的數(shù)據(jù),即外網(wǎng)ip——從服務(wù)器的角度看的你的ip地址。此外也可以使用STUN協(xié)議??傊@些方法都需要處在外網(wǎng)的服務(wù)器,因為NAT設(shè)備是不會讓內(nèi)網(wǎng)主機獲取其ip映射表的。

我可以實現(xiàn)上述提到的每一種獲取外網(wǎng)ip的方法。如有需要請追問

網(wǎng)站名稱:net轉(zhuǎn)換vb代碼,vb·net
分享地址:http://www.rwnh.cn/article48/dsijoep.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App開發(fā)、小程序開發(fā)、手機網(wǎng)站建設(shè)網(wǎng)站內(nèi)鏈、企業(yè)建站、虛擬主機

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設(shè)計公司
萨嘎县| 台东县| 天镇县| 鹿邑县| 福安市| 玉溪市| 九龙城区| 吴川市| 神农架林区| 宁明县| 小金县| 桂阳县| 马关县| 兴山县| 南华县| 探索| 融水| 香格里拉县| 杭州市| 呼伦贝尔市| 宁武县| 西乌| 东山县| 信阳市| 体育| 马公市| 阜南县| 汕尾市| 绥中县| 隆化县| 朔州市| 德钦县| 海阳市| 日照市| 久治县| 河北省| 西昌市| 突泉县| 温泉县| 渝中区| 沂源县|