真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

vb.netipv4 vbnet tcp

用vb.net取得IP重復(fù)問(wèn)題(如何判斷是IPv4還是IPv6)

運(yùn)行 cmd 輸入 ipconfig (粘貼入cmd即可)

創(chuàng)新互聯(lián)專注于閩侯企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè),商城網(wǎng)站建設(shè)。閩侯網(wǎng)站建設(shè)公司,為閩侯等地區(qū)提供建站服務(wù)。全流程按需定制網(wǎng)站,專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)

如果出現(xiàn)2001開頭的ip地址即為

以此方法來(lái)驗(yàn)證是否為IPV6(網(wǎng)上的方法,不知真?zhèn)?。反正我信了。?/p>

net.ipv4.tcp_max_tw_buckets 配置說(shuō)明

因?yàn)榍靶┨煊龅酱罅?TIME_WAIT 導(dǎo)致端口耗盡服務(wù)異常的情況,讓我注意到這個(gè)參數(shù)。

先說(shuō)它的作用:在 TIME_WAIT 數(shù)量等于 tcp_max_tw_buckets 時(shí),不會(huì)有新的 TIME_WAIT 產(chǎn)生。

如果不是類似 Nginx 之類的中間代理(即不擔(dān)心端口耗盡),你通常不用關(guān)心這個(gè)值,使用官方默認(rèn)的就好,甚至官方建議在內(nèi)存大的情況下可以增加這個(gè)值。

類似 Nginx 之類的中間代理一定要關(guān)注這個(gè)值,因?yàn)樗鼘?duì)你的系統(tǒng)起到一個(gè)保護(hù)的作用,一旦端口全部被占用,服務(wù)就異常了。 tcp_max_tw_buckets 能幫你降低這種情況的發(fā)生概率,爭(zhēng)取補(bǔ)救時(shí)間。

在完全下面 2 條完全滿足的情況下

可能會(huì)出現(xiàn)兩種異常情況:

① 對(duì)端服務(wù)器發(fā)完最后一個(gè) Fin 包,沒有收到當(dāng)前服務(wù)器返回最后一個(gè) Ack,又重發(fā)了 Fin 包,因?yàn)樾碌?TimeWait 沒有辦法創(chuàng)建 ,這個(gè)連接在當(dāng)前服務(wù)器上就消失了,對(duì)端服務(wù)器將會(huì)收到一個(gè) Reset 包。因?yàn)檫@個(gè)連接是明確要關(guān)閉的,所以收到一個(gè) Reset 也不會(huì)有什么大問(wèn)題。(但是違反了 TCP/IP 協(xié)議)

② 因?yàn)檫@個(gè)連接在當(dāng)前服務(wù)器上消失,那么剛剛釋放的端口可能被立刻使用,如果這時(shí)對(duì)端服務(wù)器沒有釋放連接,當(dāng)前服務(wù)器就會(huì)收到對(duì)端服務(wù)器發(fā)來(lái)的 Reset 包。如果當(dāng)前服務(wù)器是代理服務(wù)器,就可能會(huì)給用戶返回 502 錯(cuò)誤。(這種異常對(duì)服務(wù)或者用戶是有影響的)

綜合收益與成本,以下給出我的建議:

在只有 60000 多個(gè)端口可用的情況下,配置為

(在盡可能不違反 TCP/IP 協(xié)議的情況下保證系統(tǒng)的可用性)

官方文檔:

2019年5月19日

IPV4地址簡(jiǎn)介

這里主要介紹在網(wǎng)絡(luò)上傳輸數(shù)據(jù)時(shí)候所需要的IP地址的相關(guān)信息。相關(guān)內(nèi)容主要包括:IP地址分類、子網(wǎng)劃分、子網(wǎng)掩碼、無(wú)分類編址(CIDR)、使用子網(wǎng)掩碼時(shí)分組的轉(zhuǎn)發(fā)過(guò)程??勺鰹槿粘澐肿泳W(wǎng)設(shè)置時(shí)的參考。

IP地址是一個(gè)32位的二進(jìn)制數(shù),用來(lái)在網(wǎng)絡(luò)中唯一標(biāo)識(shí)一臺(tái)計(jì)算機(jī)。IP地址由因特網(wǎng)名字與號(hào)碼指派公司(ICANN,即:Internet Corporation for Assigned Names and Numbers)分配。我國(guó)用戶可向亞太網(wǎng)絡(luò)信息中心(APNIC,即:Asia Pacific Network Information Center)申請(qǐng)IP地址(需繳費(fèi))。

IP地址的編址方法共經(jīng)歷了三個(gè)階段:

后面在適當(dāng)之處會(huì)詳細(xì)介紹。

為了方便IP尋址,將所有IP地址所在的網(wǎng)絡(luò)劃分為A、B、C、D和E五類,IP地址由網(wǎng)絡(luò)ID(也叫網(wǎng)絡(luò)號(hào))和主機(jī)ID(也叫主機(jī)號(hào))兩部份組成。每種類型的網(wǎng)絡(luò)對(duì)其IP地址中用來(lái)表示網(wǎng)絡(luò)ID和主機(jī)ID的位數(shù)作了明確的規(guī)定。

A類地址用IP地址前8位表示網(wǎng)絡(luò)ID,后24位表示主機(jī)ID。表示網(wǎng)絡(luò)ID的第一位必須以0開始,其他7位可以是任意值,當(dāng)其他7位全為0是網(wǎng)絡(luò)ID最小,即為0;當(dāng)其他7位全為1時(shí)網(wǎng)絡(luò)ID最大,即為127。網(wǎng)絡(luò)ID不能為0,它有特殊的用途,用來(lái)表示所有網(wǎng)段,所以網(wǎng)絡(luò)ID最小為1;網(wǎng)絡(luò)ID也不能為127;127用來(lái)作為網(wǎng)絡(luò)回路測(cè)試用。所以A類網(wǎng)絡(luò)網(wǎng)絡(luò)ID的有效范圍是1-126共126個(gè)網(wǎng)絡(luò),每個(gè)網(wǎng)絡(luò)可以包含224-2臺(tái)主機(jī)。

B類地址用IP地址前16位表示網(wǎng)絡(luò)ID,后16位表示主機(jī)ID。表示網(wǎng)絡(luò)ID的前兩位必須以10開始,其他14位可以是任意值,當(dāng)其他14位全為0是網(wǎng)絡(luò)ID最小,即為128;當(dāng)其他14位全為1時(shí)網(wǎng)絡(luò)ID最大,第一個(gè)字節(jié)數(shù)最大,即為191。B類IP地址第一個(gè)字節(jié)的有效范圍為128-191,共16384個(gè)B類網(wǎng)絡(luò);每個(gè)B類網(wǎng)絡(luò)可以包含216-2臺(tái)主機(jī)(即65534臺(tái)主機(jī))。

C類地址用IP地址前24位表示網(wǎng)絡(luò)ID,后8位表示主機(jī)ID。表示網(wǎng)絡(luò)ID的前三位必須以110開始,其他22位可以是任意值,當(dāng)其他22位全為0是網(wǎng)絡(luò)ID最小,IP地址的第一個(gè)字節(jié)為192;當(dāng)其他22位全為1時(shí)網(wǎng)絡(luò)ID最大,第一個(gè)字節(jié)數(shù)最大,即為223。C類IP地址第一個(gè)字節(jié)的有效范圍為192-223,共2097152個(gè)C類網(wǎng)絡(luò);每個(gè)C類網(wǎng)絡(luò)可以包含28-2臺(tái)主機(jī)(即254臺(tái)主機(jī))。

D類地址用來(lái)多播使用,沒有網(wǎng)絡(luò)ID和主機(jī)ID之分,其第一個(gè)字節(jié)前四位必須以1110開始,其他28位可以是任何值,則D類IP地址的有效范圍為224.0.0.0到239.255.255.255。

E類地址保留實(shí)驗(yàn)用,沒有網(wǎng)絡(luò)ID和主機(jī)ID之分,其第一字節(jié)前四位必須以1111開始,其它28位可以是任何值,則E類IP地址的有效范圍為240.0.0.0至255.255.255.254。其中255.255.255.2555表示廣播地址。

在實(shí)際應(yīng)用中,只有A、B和C三類IP地址能夠直接分配給主機(jī),D類和E類不能直接分配給計(jì)算機(jī)。

IP地址由IANA(Internet地址分配機(jī)構(gòu)后來(lái)被ICANN掌管)管理和分配,任何一個(gè)IP地址要能夠在Internet上使用就必須由IANA分配,IANA分配的能夠在Internet上正常使用的IP地址稱之為公共IP地址;同時(shí)IANA也保留了一部份IP地址,這部份IP地址不能在讓個(gè)人和機(jī)構(gòu)在Internet上使用,此類IP地址就稱之為私有IP地址,這些非注冊(cè)的私有IP地址可供組織個(gè)人內(nèi)部使用。因?yàn)镮nternet上沒有私有IP地址的路由,所以,私有IP地址不能在Internet上使用。私有IP地址范圍包括:

在我們組建局域網(wǎng)的時(shí)候(例如在家中將多個(gè)機(jī)器組成一個(gè)局域網(wǎng),可以共享同一個(gè)寬帶口上網(wǎng),還可實(shí)現(xiàn)局域網(wǎng)內(nèi)機(jī)器的數(shù)據(jù)共享),可以使用私有IP做為局域網(wǎng)內(nèi)機(jī)器的IP地址。另外我們需要注意的是,以上和后面討論的網(wǎng)絡(luò)間機(jī)器通信的路由過(guò)程,都是不同網(wǎng)段具有公共IP機(jī)器的路由,而不是到這樣的只有私有地址的局域網(wǎng)機(jī)器的路由(但是兩者路由時(shí)候的基本原理是一樣的)。像這樣的私有地址局域網(wǎng)內(nèi)的機(jī)器,在公共網(wǎng)絡(luò)上是不可見的,雖然這個(gè)局域網(wǎng)內(nèi)的機(jī)器能夠通過(guò)網(wǎng)關(guān)訪問(wèn)到外面,但是通過(guò)一般手段,外面無(wú)法訪問(wèn)到這個(gè)局域網(wǎng)中的特定機(jī)器,在外邊的公網(wǎng)看來(lái),這個(gè)局域網(wǎng)內(nèi)所有的機(jī)器連同它們的網(wǎng)關(guān)共同組成了一個(gè)“機(jī)器”,即網(wǎng)絡(luò)節(jié)點(diǎn),節(jié)點(diǎn)的IP就是網(wǎng)關(guān)暴漏給外面的公網(wǎng)IP,這點(diǎn)不在本文討論范圍內(nèi)。

前面介紹的“分類的IP地址”,不利于根據(jù)企業(yè)需要靈活分配IP地址。比如,一個(gè)企業(yè)有2000臺(tái)計(jì)算機(jī),那么根據(jù)前面對(duì)各類IP地址規(guī)定,要么為其分配一個(gè)B類的網(wǎng)絡(luò)地址,這樣該網(wǎng)絡(luò)可包含65534臺(tái)計(jì)算機(jī),將造成63534個(gè)IP地址的浪費(fèi);要么為其分配8個(gè)C類網(wǎng)絡(luò)地址,那么必須用路由器連接這個(gè)8個(gè)網(wǎng)絡(luò),造成公司網(wǎng)絡(luò)管理和維護(hù)的負(fù)擔(dān)。

以上問(wèn)題的根源就在于早期建立的IP地址結(jié)構(gòu),只有“網(wǎng)絡(luò)號(hào)+主機(jī)號(hào)”這樣的兩級(jí)結(jié)構(gòu),且長(zhǎng)度固定(即A類、B類、C類等幾種網(wǎng)絡(luò)的網(wǎng)絡(luò)字段長(zhǎng)度和主機(jī)字段長(zhǎng)度是固定的)。為解決上述問(wèn)題,1985年在原有IP地址的兩級(jí)結(jié)構(gòu)中增加了一個(gè)“子網(wǎng)號(hào)”,這樣原來(lái)的兩級(jí)IP地址變成了“網(wǎng)絡(luò)號(hào)+子網(wǎng)號(hào)+主機(jī)號(hào)”三級(jí)結(jié)構(gòu),其中“網(wǎng)絡(luò)號(hào)”就是原來(lái)兩級(jí)結(jié)構(gòu)中的網(wǎng)絡(luò)號(hào),“子網(wǎng)號(hào)+主機(jī)號(hào)”就是原來(lái)兩級(jí)結(jié)構(gòu)中的“主機(jī)號(hào)”。

通過(guò)對(duì)原來(lái)網(wǎng)絡(luò)中固定長(zhǎng)度的“主機(jī)號(hào)部分”,劃分為可變的“子網(wǎng)號(hào)+主機(jī)號(hào)”兩部分(但是兩者總長(zhǎng)還是固定的),可以實(shí)現(xiàn)將原有網(wǎng)絡(luò)號(hào)對(duì)應(yīng)的網(wǎng)絡(luò)(一般是A類、B類或C類的網(wǎng)絡(luò))中再次劃分子網(wǎng),原來(lái)兩級(jí)結(jié)構(gòu)中的“主機(jī)號(hào)”部分不再固定不變,增加了靈活性,節(jié)省了IP地址的浪費(fèi)。

這里IP尋址的意思就是根據(jù)一個(gè)IP地址,找到相應(yīng)的機(jī)器,也就是路由的過(guò)程。無(wú)論是劃分了子網(wǎng)的網(wǎng)絡(luò),還是沒有劃分子網(wǎng)的網(wǎng)絡(luò),各個(gè)不同網(wǎng)絡(luò)之間,都是通過(guò)路由器相連接的。

對(duì)于前面的描述,我們把IP地址中“網(wǎng)絡(luò)號(hào)+子網(wǎng)號(hào)”共同組成的部分,稱作IP地址對(duì)應(yīng)的網(wǎng)絡(luò)地址部分,網(wǎng)絡(luò)地址部分再加上全零的主機(jī)地址便成了網(wǎng)絡(luò)地址。這樣我們很容易算出一個(gè)IP地址對(duì)應(yīng)的網(wǎng)絡(luò)地址。例如:

IP地址:168.169.170.171

是一個(gè)B類地址,我們沒有給它劃分子網(wǎng),于是它的網(wǎng)絡(luò)地址為:168.169.0.0。若劃分子網(wǎng)了,那么就將"170.171"中相應(yīng)于的子網(wǎng)位也換算成二進(jìn)制,并表示出來(lái),這里不詳細(xì)說(shuō)明了。

假設(shè)A主機(jī)給B主機(jī)發(fā)送IP數(shù)據(jù)包,當(dāng)知道了網(wǎng)絡(luò)地址的長(zhǎng)度之后,A主機(jī)便可通過(guò)根據(jù)IP包中的目的地址(B主機(jī)的IP地址),知道的其相應(yīng)的網(wǎng)絡(luò)地址是否和自己的網(wǎng)絡(luò)地址相同,如果相同那么兩者就在同一網(wǎng)段,于是,A直接發(fā)送數(shù)據(jù)給B;如果網(wǎng)絡(luò)地址不同,那么兩者不在同一個(gè)網(wǎng)絡(luò)中,所以需要由路由器負(fù)責(zé)位于不同網(wǎng)絡(luò)的機(jī)器之間的通信。

總之,發(fā)送數(shù)據(jù)時(shí):(1)發(fā)送主機(jī)先檢查IP包中目的IP地址的網(wǎng)絡(luò)地址,如果和自己相同則直接發(fā)送給主機(jī)(2)如果不同,則通過(guò)路由器將包發(fā)送到目的網(wǎng)絡(luò),再到達(dá)主機(jī)。(3)路由器中的路由表,記錄了它所知的所有IP網(wǎng)絡(luò)地址對(duì)應(yīng)的目的網(wǎng)絡(luò),目的網(wǎng)絡(luò)中的機(jī)器(路由)會(huì)將發(fā)給它網(wǎng)絡(luò)中機(jī)器的數(shù)據(jù)包傳達(dá)給正確的主機(jī)。

前面所述的路由過(guò)程,有一個(gè)關(guān)鍵的地方就是要確定目的地址的“網(wǎng)絡(luò)地址”的長(zhǎng)度。雖然沒有劃分子網(wǎng)的分類IP地址其網(wǎng)絡(luò)地址長(zhǎng)度是固定的,但是經(jīng)過(guò)了“子網(wǎng)的劃分”之后,由于網(wǎng)絡(luò)地址的長(zhǎng)度變得不固定了,所以需要一種新的方法,以便確定一個(gè)IP地址對(duì)應(yīng)的網(wǎng)絡(luò)地址的位數(shù)。我們可以用子網(wǎng)掩碼來(lái)實(shí)現(xiàn)這點(diǎn)。

子網(wǎng)掩碼的位數(shù)和IP地址相同,格式是將主機(jī)部分全置為0,網(wǎng)絡(luò)地址部分全置為1。例如:A類地址的子網(wǎng)掩碼就是255.0.0.0;B類地址的子網(wǎng)掩碼為255.255.0.0;劃分了兩個(gè)子網(wǎng)的B類網(wǎng)址其子網(wǎng)的子網(wǎng)掩碼為255.255.128.0。

因此可知,網(wǎng)絡(luò)地址就是IP地址與子網(wǎng)掩碼進(jìn)行與運(yùn)算獲得,即將IP地址中表示主機(jī)ID的部份全部變?yōu)?,表示“網(wǎng)絡(luò)ID+子網(wǎng)ID”的部份保持不變。再次強(qiáng)調(diào),網(wǎng)絡(luò)地址的格式與IP地址相同都是32位的二進(jìn)制數(shù);主機(jī)號(hào)就是表示主機(jī)號(hào)的部份。

例1:IP地址:192.168.23.130 子網(wǎng)掩碼:255.255.255.192

則:這是劃分了子網(wǎng)的C類網(wǎng)絡(luò)中的IP地址;網(wǎng)絡(luò)地址為192.168.23.0;網(wǎng)絡(luò)號(hào)為192.168.23;子網(wǎng)號(hào):2;主機(jī)ID:2。

例2:IP地址:192.168.23.130 子網(wǎng)掩碼:255.255.255.0

則:這是沒劃分子網(wǎng)的C類網(wǎng)絡(luò)中的IP地址;網(wǎng)絡(luò)地址為192.168.23.0,網(wǎng)絡(luò)號(hào)為192.168.23,主機(jī)130。

現(xiàn)在的標(biāo)準(zhǔn)規(guī)定,所有的網(wǎng)絡(luò)都必須有一個(gè)子網(wǎng)掩碼。

在不劃分子網(wǎng)的兩級(jí)IP地址下,從IP地址很容易得到相應(yīng)的網(wǎng)絡(luò)地址。劃分子網(wǎng)之后,僅從IP地址無(wú)法得到相應(yīng)的網(wǎng)絡(luò)地址,而且IP數(shù)據(jù)包中也沒有關(guān)于網(wǎng)絡(luò)地址的信息,所以還需要通過(guò)子網(wǎng)掩碼來(lái)嘗試得到一個(gè)IP地址的網(wǎng)絡(luò)信息,而這個(gè)子網(wǎng)掩碼則是預(yù)先在發(fā)送端配置好了的。舉例說(shuō)明一下發(fā)送IP數(shù)據(jù)包時(shí),使用子網(wǎng)掩碼尋址的過(guò)程。

例1,假設(shè)位于同一個(gè)子網(wǎng)的A向B發(fā)送IP包。

大致過(guò)程是:

(1)A要有一個(gè)待發(fā)送的IP包,其中包含B的IP地址以及A本身的IP地址;還要有一個(gè)在A上面配置的自己的本地子網(wǎng)掩碼(通過(guò)這個(gè)“本地子網(wǎng)掩碼”,A會(huì)以為自己所在的網(wǎng)絡(luò)其網(wǎng)絡(luò)地址位數(shù)是本地子網(wǎng)掩碼中1的個(gè)數(shù))。

(2)A將B的IP地址和本地子網(wǎng)掩碼相與,得到自己理解的B的IP地址所屬的網(wǎng)絡(luò)地址netb;A再將自己的IP和本地子網(wǎng)掩碼相與,得到自己理解的自己的IP地址所屬的網(wǎng)絡(luò)地址neta;

(3)將netb和neta比較,兩者相同,則A認(rèn)為B與它在同一個(gè)網(wǎng)絡(luò)中,所以不經(jīng)過(guò)其它機(jī)器(例如路由器),直接將IP包轉(zhuǎn)發(fā)給B。

例2,當(dāng)A和B位于不同子網(wǎng),則前面的netb和neta不相同,這時(shí)候需要經(jīng)過(guò)路由進(jìn)行轉(zhuǎn)發(fā)。

大致過(guò)程是:

(1)A上面一般會(huì)事先配置一個(gè)網(wǎng)關(guān)R,這個(gè)網(wǎng)關(guān)的IP地址應(yīng)當(dāng)和A在同一個(gè)網(wǎng)絡(luò)中。當(dāng)A發(fā)送的IP包目標(biāo)地址B不屬于A的網(wǎng)絡(luò)時(shí)會(huì)將這個(gè)IP包發(fā)送給網(wǎng)關(guān)R(注意,這個(gè)時(shí)候,IP包中的目的地址并沒有變成R的IP地址,A只是通過(guò)它本身的網(wǎng)關(guān)配置,知道了R的IP地址并在IP層下面的網(wǎng)絡(luò)接口層中將目標(biāo)的MAC地址變成了R的MAC地址發(fā)送給R;而R在轉(zhuǎn)發(fā)時(shí),目的IP仍舊不變,也會(huì)在MAC幀中重寫目標(biāo)MAC地址,這期間涉及到使用ARP協(xié)議根據(jù)機(jī)器IP查詢其MAC地址,以及網(wǎng)絡(luò)接口層的內(nèi)容,這里不詳細(xì)敘述了);另外,一臺(tái)機(jī)器應(yīng)該可以設(shè)置多個(gè)網(wǎng)關(guān),指定它們用轉(zhuǎn)發(fā)特定外網(wǎng)中的目的地址,或者配置一個(gè)無(wú)論哪個(gè)外網(wǎng)地址都會(huì)轉(zhuǎn)發(fā)給這個(gè)網(wǎng)關(guān)的默認(rèn)網(wǎng)關(guān)地址。

(2)R上面有一個(gè)路由表,其中的每項(xiàng)記錄包含了它所知的所有網(wǎng)絡(luò)的網(wǎng)絡(luò)地址、子網(wǎng)掩碼、以及對(duì)應(yīng)的路由(如果目的地址B在另外一個(gè)路由連接的不同網(wǎng)絡(luò)中)或者主機(jī)B所連網(wǎng)絡(luò)的接口(如果目的地址B在同一個(gè)R路由器所連接的不同網(wǎng)絡(luò)中)。注意,因?yàn)槁酚善魇强梢赃B接不同的網(wǎng)絡(luò)的,所以路由器上面有至少兩個(gè)網(wǎng)絡(luò)接口,每個(gè)網(wǎng)絡(luò)接口對(duì)應(yīng)一個(gè)網(wǎng)絡(luò)地址,而相應(yīng)地,主機(jī)卻只有一個(gè)網(wǎng)絡(luò)地址。

(3)R根據(jù)自己的路由表和IP中的目的地址B所在的位置并發(fā)送。具體過(guò)程是:將路由表中第一項(xiàng)的子網(wǎng)掩碼與目標(biāo)地址B進(jìn)行與,得到網(wǎng)絡(luò)地址如果匹配相應(yīng)表項(xiàng)的地址則轉(zhuǎn)發(fā)到相應(yīng)的網(wǎng)絡(luò)接口或者路由,否則對(duì)下一項(xiàng)進(jìn)行同樣的匹配,直到出現(xiàn)匹配的情況并且將數(shù)據(jù)發(fā)送出去。

(4)R的路由表中若有一個(gè)默認(rèn)的路由,則當(dāng)所有項(xiàng)都不匹配的時(shí)候?qū)?shù)據(jù)發(fā)送到這個(gè)路由。

(5)如果以上過(guò)程全都沒有匹配,則報(bào)告轉(zhuǎn)發(fā)分組出錯(cuò)。

通過(guò)以上描述我們可知:(1)子網(wǎng)掩碼是在發(fā)送端上的,而不是在網(wǎng)絡(luò)中傳輸?shù)?。?)發(fā)送端發(fā)送的時(shí)候會(huì)根據(jù)自己的子網(wǎng)掩碼來(lái)確定(它所認(rèn)為的)目標(biāo)IP的網(wǎng)絡(luò)地址,而不是通過(guò)某個(gè)事先公共協(xié)商好的子網(wǎng)掩碼;(3)發(fā)送端的子網(wǎng)掩碼雖然理論上可以隨意配置,但是應(yīng)當(dāng)和自己所屬的子網(wǎng)對(duì)應(yīng)的網(wǎng)關(guān)的接口子網(wǎng)掩碼一致,否則很可能會(huì)有問(wèn)題。

至此,在講述CIDR(無(wú)分類編址)之前,為便于理解,我們將遇到過(guò)的“子網(wǎng)掩碼、網(wǎng)絡(luò)地址、網(wǎng)絡(luò)類別、IP地址、網(wǎng)絡(luò)號(hào)、子網(wǎng)、子網(wǎng)號(hào)、主機(jī)號(hào)”這幾個(gè)比較容易混淆的概念再進(jìn)行一下總結(jié):

(1)IP地址是在發(fā)送IP包時(shí),用于標(biāo)識(shí)網(wǎng)絡(luò)節(jié)點(diǎn)(例如某個(gè)特定主機(jī))的具體位置,目前長(zhǎng)度固定為32位;

(2)IP地址中分為“網(wǎng)絡(luò)部分”和“主機(jī)號(hào)”,網(wǎng)絡(luò)部分是IP地址的“左”邊,“主機(jī)號(hào)”在IP地址的“右”邊;

(3)網(wǎng)絡(luò)地址其格式和IP地址格式幾乎一樣,用于標(biāo)識(shí)一個(gè)IP地址究竟屬于哪個(gè)網(wǎng)絡(luò);

(4)計(jì)算一個(gè)IP地址的網(wǎng)絡(luò)地址的方法是將IP地址僅保留“網(wǎng)絡(luò)部分”,而將“主機(jī)號(hào)”部分全部置零;

(5)網(wǎng)絡(luò)類別是指對(duì)所有IP地址按某種策略分類,得到的A、B、C、D、E等這些網(wǎng)絡(luò),一個(gè)IP地址一定屬于其中的一類,也可理解為“分類編址”(與CIDR的無(wú)分類編制相對(duì));

(6)劃分子網(wǎng)之后,IP地址中的“網(wǎng)絡(luò)部分”從左到右又可劃分為“網(wǎng)絡(luò)號(hào)+子網(wǎng)號(hào)”,如果沒有劃分子網(wǎng)則沒有“子網(wǎng)號(hào)”部分。

(7)一種類別的網(wǎng)絡(luò),如果劃分了子網(wǎng),那么其中的IP地址“網(wǎng)絡(luò)號(hào)”部分的位數(shù)是固定的,“子網(wǎng)號(hào)”部分位數(shù)是不固定的(位數(shù)越少則子網(wǎng)越“大”,包含的主機(jī)數(shù)也越多),而后面的“子網(wǎng)號(hào)+主機(jī)號(hào)”總和是固定的位數(shù)(32位-“網(wǎng)絡(luò)號(hào)”位數(shù));

(8)一種類別的網(wǎng)絡(luò),如果沒有劃分子網(wǎng),則其中的IP地址“網(wǎng)絡(luò)部分”沒有“子網(wǎng)號(hào)”部分,并且網(wǎng)絡(luò)位數(shù)是固定的,等于其“網(wǎng)絡(luò)號(hào)”部分,因此“主機(jī)號(hào)”部分也是固定的(32位-“網(wǎng)絡(luò)號(hào)”)。

以上這些概念不是嚴(yán)格如此的,但是嘗試用這里的方式,應(yīng)該能助于理解相關(guān)的內(nèi)容。

劃分子網(wǎng)在一定程度上解決了Internet發(fā)展中遇到的許多困難,但是隨著因特網(wǎng)的普及,仍然面臨著兩個(gè)重要的問(wèn)題:

(a)IP地址面臨耗盡的問(wèn)題。

(b)路由表項(xiàng)目急劇增長(zhǎng)。

第一個(gè)問(wèn)題屬于長(zhǎng)遠(yuǎn)的問(wèn)題,將由IETF(即Internet Engineering Task Force,互聯(lián)網(wǎng)工程任務(wù)組,主要任務(wù)是負(fù)責(zé)互聯(lián)網(wǎng)相關(guān)技術(shù)規(guī)范的研發(fā)和制定)成立的IPv6工作組研究新版本IP協(xié)議時(shí)解決;第二個(gè)問(wèn)題采用無(wú)分類編制(即CIDR,Classless Inter-Domain Routing)來(lái)解決。

(a)CIDR消除了傳統(tǒng)A、B、C等分類,以及在分類的IP中進(jìn)行子網(wǎng)劃分的概念。

CIDR不用子網(wǎng),而直接使用網(wǎng)絡(luò)前綴,這樣IP地址又變回了兩級(jí)結(jié)構(gòu),即IP地址={網(wǎng)絡(luò)前綴,主機(jī)}。但是這里的網(wǎng)絡(luò)前綴直接就是IP地址中除主機(jī)部分的網(wǎng)絡(luò)地址部分,這個(gè)網(wǎng)絡(luò)地址已經(jīng)沒有A、B、C之類的區(qū)別。IP地址采用“斜線記法”(又稱CIDR記法),即在IP地址后面加上一個(gè)"/",在加上網(wǎng)絡(luò)前綴的位數(shù)。

例如:128.15.68.36/20,表示這個(gè)32位的IP地址中,前20 bit表示網(wǎng)絡(luò)前綴,后12 bit表示主機(jī)號(hào)。

(b)CIDR將連續(xù)的、網(wǎng)絡(luò)前綴相同的IP地址組成“CIDR地址塊”。

由于沒有IP地址分類的概念(即A、B、還是C等類的網(wǎng)絡(luò))了,所以,一個(gè)地址塊可能包含多個(gè)某種類型的網(wǎng)絡(luò)(例如一個(gè)“/18 地址塊”相當(dāng)于64個(gè)C類的網(wǎng)絡(luò)),通過(guò)這個(gè)方式,CIDR使得路由器中的路由表項(xiàng)目,比包含分類IP概念的路由表項(xiàng)目少了很多。這個(gè)我們可以稱作“路由聚合(route aggregation)”或者“構(gòu)成超網(wǎng)(supernetting)”。地址塊包含如下信息:起始地址+地址塊中的地址數(shù)。它也采用和IP地址一樣的“斜線記法”。

例如:128.15.32.0/20表示一個(gè)包含2^12個(gè)主機(jī)的地址塊(因?yàn)榫W(wǎng)絡(luò)前綴20位,所以主機(jī)數(shù)目是2的12次方個(gè)),其起始地址為128.15.32.0。有時(shí)候,我們可能不必關(guān)心起始地址,那么可以省略起始地址部分,例如:“/20 地址塊”表示有20位網(wǎng)絡(luò)前綴的某個(gè)地址塊。因?yàn)榈刂穳K的記錄方法和IP地址一樣,所以,有時(shí)候,需要根據(jù)上下文來(lái)確定,一個(gè)用斜線記法表示的地址是IP地址,還是CIDR的IP地址塊。

另外,CIDR中雖然沒有子網(wǎng)概念了,但是還有掩碼的概念,掩碼也可用斜線記法表示。

CIDR的斜線記法還有以下等效的方式:

10.0.0.0/10,可簡(jiǎn)寫為10/10(即點(diǎn)分10進(jìn)制的IP部分中低位連續(xù)的0省略)。

0000101000xxxxxx xxxxxxxx xxxxxxxx,這里的"x"表示任意主機(jī)地址,非"x"的部分是網(wǎng)絡(luò)前綴。

0000101000*,這里的"*"表示任意主機(jī)地址,非"*"部分是網(wǎng)絡(luò)前綴。

注意,在配置基于CIDR的網(wǎng)絡(luò)時(shí)候,可能有的主機(jī)以前就是基于分類的IP地址的(無(wú)論有無(wú)子網(wǎng)劃分),他們可能不允許將網(wǎng)絡(luò)前綴設(shè)置為比原來(lái)分類地址的子網(wǎng)掩碼1比特長(zhǎng)度更短。例如:200.25.16.0/20這樣的配置就不行,因?yàn)樵谒磥?lái)這是一個(gè)C類網(wǎng)絡(luò),其子網(wǎng)掩碼長(zhǎng)度至少為24位。所以,只有主機(jī)軟件支持CIDR之時(shí),網(wǎng)絡(luò)前綴才能比原來(lái)的分類IP地址掩碼長(zhǎng)度更短。

由上面我們可以看出,使用CIDR可以減少路由表項(xiàng)目,也可以更有效的利用IP地址。

通過(guò)下面兩個(gè)例子可以有助了解:

(a)假設(shè)有一個(gè)ISP,它擁有地址塊206.0.64.0/18。在采用CIDR之前,這個(gè)ISP其實(shí)相當(dāng)于擁有64個(gè)C類網(wǎng)絡(luò),每個(gè)和此ISP通信的網(wǎng)絡(luò)都需要在其路由內(nèi)部有至少64個(gè)與此ISP相關(guān)的路由表項(xiàng);采用CIDR地址聚合之后,這個(gè)ISP的相關(guān)表項(xiàng)就致用一個(gè)"/18 地址塊"即可。可見,采用CIDR大大減少了路由表中的表項(xiàng)數(shù)目。

(b)假設(shè)有一個(gè)大學(xué)需要向上面提到的ISP申請(qǐng)800個(gè)IP地址。在采用CIDR之前,ISP或者為這個(gè)學(xué)校分配1個(gè)B類地址(這將浪費(fèi)64734個(gè)IP地址),或者分配4個(gè)C類地址(這樣各個(gè)相關(guān)路由表中會(huì)有4個(gè)該大學(xué)的表項(xiàng)),而且這個(gè)大學(xué)給其各系分配子網(wǎng)之時(shí),也會(huì)比較復(fù)雜;采用CIDR之后,ISP只需要給這個(gè)大學(xué)分配一個(gè)"/22 地址塊",大學(xué)也可以給其各個(gè)系分配相應(yīng)大小的地址塊??梢?,采用CIDR大大提高了IP的利用率和管理復(fù)雜度。

當(dāng)采用CIDR之時(shí),IP地址由“網(wǎng)絡(luò)前綴+主機(jī)號(hào)”組成,路由表項(xiàng)目則相應(yīng)地改成了“網(wǎng)絡(luò)前綴+下一跳路由”,這樣在查找路由的時(shí)候,一個(gè)IP地址可能得到不止一個(gè)匹配結(jié)果,這是采用最長(zhǎng)匹配原則,確認(rèn)網(wǎng)絡(luò)前綴最長(zhǎng)匹配的一項(xiàng)。

例如:前面的ISP給大學(xué)分配了206.0.68.0/22地址塊,該大學(xué)又給其某個(gè)系分配了206.0.71.128/25地址塊,這樣,ISP中就有了這兩個(gè)路由表項(xiàng)。當(dāng)ISP收到一個(gè)數(shù)據(jù)報(bào)目的IP為D=206.0.71.130之時(shí),查找表項(xiàng)將D與前面兩表項(xiàng)中的子網(wǎng)掩碼與目標(biāo)地址相與,發(fā)現(xiàn)都匹配,但是由于206.0.71.128/25的網(wǎng)絡(luò)前綴更長(zhǎng),所以會(huì)采用這個(gè)更長(zhǎng)的路由表項(xiàng)(因?yàn)榫W(wǎng)絡(luò)前綴越長(zhǎng),信息越具體)。

雖然現(xiàn)在很難將已經(jīng)分配出去的IP重新收回,再采用CIDR的策略重新規(guī)劃IP分配,但是CIDR已經(jīng)推遲了IP地址將要耗盡的日期。

以上內(nèi)容,基本是對(duì)教科書和網(wǎng)絡(luò)資料以及在一些實(shí)踐基礎(chǔ)上的總結(jié),其中有描述不夠準(zhǔn)確的地方,希望讀者能夠聯(lián)系我,相互交流和學(xué)習(xí)。 _

關(guān)于net.ipv4.tcp_tw_recycle

問(wèn)題背景(公司服務(wù)器跑著java,py.php等多個(gè)項(xiàng)目,在項(xiàng)目開發(fā)完成后順利提測(cè)后,線上不間斷出現(xiàn)了丟包忽略的情況,且用外網(wǎng)訪問(wèn)就沒有問(wèn)題)

進(jìn)項(xiàng)翻閱查詢1天,原來(lái)是Linux內(nèi)核參數(shù)的問(wèn)題,這里了解的不是很深入,僅對(duì)于此問(wèn)題進(jìn)行了解決,附解決問(wèn)題的鏈接

針對(duì)的現(xiàn)象就是公司內(nèi)網(wǎng)中出現(xiàn)不間斷丟包,但是外網(wǎng)也無(wú)問(wèn)題的現(xiàn)象。(或者單獨(dú)切換你的運(yùn)營(yíng)商也不會(huì)出問(wèn)題,同ip訪問(wèn)量過(guò)大導(dǎo)致丟包而且是http項(xiàng)目)

附著解決方法:

net.ipv4.tcp_tw_recycle

vim? /etc/sysctl.conf

net.ipv4.tcp_tw_recycle = 0sysctl? -p

感謝大家無(wú)私的奉獻(xiàn)

400分求vb.net,求一個(gè)socket的編程實(shí)例,詳細(xì)見問(wèn)題補(bǔ)充:

至少需要

Imports?System

Imports?System.Net

Imports?System.Net.Sockets

Imports?System.Threading

Imports?System.Text

還要了解異步與委托

簡(jiǎn)單點(diǎn)的話

sub?tcplisten()?'監(jiān)聽過(guò)程

Const?LPort?As?Integer?=?6850?'本地監(jiān)聽端口

Dim?IPadd?As?IPAddress?=?Dns.GetHostEntry(Dns.GetHostName()).AddressList(1)?’本地IP

'addresslist里面包括IPV6和IPV4

Dim?IPEP?As?New?IPEndPoint(IPadd,?LPort)?'結(jié)點(diǎn)

TCPL?=?New?TcpListener(IPEP)?’建立監(jiān)聽實(shí)例

TCPL.Start()?'開始監(jiān)聽

If?TCPL.Pending?=?True?Then?'如果有連接接入

Dim?TCPLX?As?New?Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp)?'建立一個(gè)新的SOCKET

TCPLX=TCPL.Accept()?’將第一個(gè)接入掛起的連接傳給新建SOCKET,因?yàn)楸O(jiān)聽的SOCKET還要繼續(xù)監(jiān)聽

dim?Ripep?as??new?ipendpoint=TCPLX.RemoteEndPoint?'此時(shí)獲得遠(yuǎn)程的ip與端口號(hào)

listbox.add(ripep.ip)

dim?buff?as?byte()

buff=TCPLX.Receive()?'listenacceptrecieve這時(shí)候可以接受數(shù)據(jù)了

dim?s?as?string=Encoding.Default.GetString(buff)?'轉(zhuǎn)換成文本

msg?"s"

TCPLX.send(buff)?'這個(gè)是發(fā)送

end?if

End?Sub

長(zhǎng)時(shí)間沒寫,可能有點(diǎn)小錯(cuò)誤,你自己調(diào)試調(diào)試,大概步驟就是listenacceptrecieve,最好看看msdn,那個(gè)學(xué)起來(lái)才系統(tǒng)

vb.net 怎么獲取客戶端ip地址?

你最好可以換臺(tái)電腦訪問(wèn)網(wǎng)址看獲取IP地址狀況。

如果你測(cè)試訪問(wèn)的時(shí)候,使用的是 localhost 進(jìn)行訪問(wèn)的,那么服務(wù)器端獲得的也就是127.0.0.1,因?yàn)閘ocalhost是一個(gè)環(huán)路地址,特殊的.如果你是通過(guò)你的ip地址進(jìn)行訪問(wèn)的,那么獲得的IP地址就會(huì)是正確的了. 要通過(guò)自己本地的IP進(jìn)行訪問(wèn),在控制面板的網(wǎng)絡(luò)連接里找到本地連接,查看它的屬性,并找到"詳細(xì)信息"按鈕,點(diǎn)擊后彈出的對(duì)話框中IPV4地址就是本地地址.或打開命令行,輸入 ipconfig /all 即可找到本地地址.在瀏覽器中通過(guò)這個(gè)IP地址訪問(wèn),就不會(huì)是127.0.0.1了.


分享題目:vb.netipv4 vbnet tcp
網(wǎng)站地址:http://weahome.cn/article/hjhghc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部