網絡基礎

網絡小白一個,針對網絡的基礎知識無從下手,因此本文引用了鳥哥私房菜中的眾多概念性知識,在此謝過,本文主要從OSI七層協議,TCP協議和一些網絡中專業詞匯進行解析,并通過子網掩碼的劃分,網絡接口的配置、路由配置等實例來加深對網絡的理解。

一、OSI七層協議:

    OSI七層協議的由來:

  由于網絡鏈接過程相當復雜,包括硬件數據封裝與應用程序的相互鏈接等, 如果想要寫一個網絡鏈接的全部功能都集中在一起的程序,那么任何一個環節出錯,整個程序都要改寫,非常麻煩,因此我們將整個網絡鏈接過程分成多個層次來處理,且每層數據傳遞是順序傳遞的,這就是OSI七層協議。

    七層協議的特點:

     每個層次都有特定獨立的功能

     每個層次的代碼可以獨立編寫

     層與層之間的功能互不干擾

     每一層次只認識對方同一層的數據    

    在七層協議中,每層都會有自己獨特的頭部數據(header):告知對方這里面的信息是什么,而真正的數據在后面

1.png

    下面來詳細介紹七層協議中每一層的含義:

       Layer1 物理層:由于網絡傳輸介質傳輸的是比特位(01),因此物理層必須定義所使用的傳輸設備的電壓和信號等,同時還必須了解數據幀轉換成比特流的編碼方式,最后鏈接實際傳輸介質并發送/接收比特信號。

       Layer2 數據鏈路層:硬件部分,主要處理MAC數據幀,傳遞給物理層轉換成比特流;軟件部分主要處理來自上層的數據表轉換成MAC的格式。相關協議:PPP

       Layer3 網絡層:定義IP地址,定義計算機之間的鏈接建立,終止維護等,數據包的傳輸路徑選擇等。相關協議:IP、ICMP、ARP、RARP

       Layer4 傳輸層:定義發送端與接收端的鏈接技術(TCP,UDP),同時包括該技術的數據包格式,數據包的發送,流程的控制等,以確保各個資料數據可以正確無誤的到達目的端。相關協議:TCP、UDP

       Layer5 會話層:確定網絡服務建立鏈接的確認。

       Layer6 表示層:定義網絡服務(或程序)之間的數據格式的轉換,使數據格式標準化,也包括數據的加密解密也是在這層上處理

       Layer7 應用層:將數據發送給應用程序,并最終展示給用戶。相關協議:HTTP、FTP、SMIP等

二、TCP/IP及其他協議

     雖然OSI七層協議的架構非常嚴謹,但是由于太過嚴謹導致程序編寫相當不容易,因此產生了TCP/IP協議。

2.png

    TCP/IP的網絡接口層的相關協議

     廣域網使用的設備

       傳統電話撥號鏈接:通過PPP協議

       整合服務數字網絡(ISDN)

       非對稱數字用戶環路(ADSl):使用PPPoE協議

       電纜調制解調器(Cable Modem)

       局域網使用的設備—以太網

       CAT5等級的網線大概可以支持100米的長度

1.png

       以太網的網絡接頭:分為交叉和直連RJ-45,又因為每條芯線的對應不同,而分為568A和568B接頭,這兩款芯線內部的順序為:

2.png

      事實上,雖然目前的以太網線有8芯且兩兩成對,但實際使用只有1、2、3、6芯而已,其他的則時某些特殊用途的場合才會使用,但是由于主機與主機鏈接以及主機與集線器鏈接時,所使用的網線線序定義并不相同,因此有由于接頭的行不同網線有可分為兩種:

        交叉線:一邊為568A一邊為568B的接頭時稱為交叉線,用在直接鏈接兩臺主機的網卡。

        直連線:兩邊接頭同為568A或568B時稱為直連線,用在鏈接主機網卡與集線器之間的線纜。

    以太網的傳輸協議:CSMA/CD

        帶沖突檢測的載波偵聽多路訪問的數據傳輸的工作方式,其工作原理為:檢測線路是否空閑,空閑則發包,并且邊發邊檢測偵聽,一旦沖突就立即停止發送,只要符合CSMA/CD機制的網絡就稱為以太網。

        交換機可以有效的避免沖突,交換機可以自動選擇路線,,每一個端口就是一個沖突域,且每個端口有收發兩根線實現全雙工功能,交換機可以鏈接多個不同的多個沖突域,路由器可以鏈接多個不同的廣播域。

    MAC的封裝格式

        數據鏈路層的工作是基于MAC地址工作的,CSMA/CD發送出去的數據幀就是MAC,該數據幀上面存儲了兩個非常重要的數據,就是目標與來源的網卡卡號,因此我們又稱網卡卡號為MaC地址。下圖中目的地址和來源地址就指的網卡卡號。   

    MTU

        以太網中數據幀能夠存儲數據的最大單位,標準定義為1500bytes,這就時MUT的最大傳輸單元。(IP數據包最大可達到65535bytes),可以增大MTU來提高網絡使用率,但是無法確認所有網絡設備都支持更大的MTU,如果不支持則可能導致數據包丟失等問題。所以MTU設定9000bytes可以設置在內部網絡的環境中部署,外網還是應該保持原有的1500標準。

    集線器、交換器與相關機制

       集線器(hub):Hub并不記憶該信息包是由哪個MAC地址發出,哪個MAC地址在Hub的哪個端口,且每個端口共享帶寬,半雙工工作機制,因為CSMA/CD的緣故,在很忙的網絡環境中,集線器(Hub)這個網絡共享設備就可能發生沖突的情況。工作與物理層。

      交換機:在交換機內部有一個特別的內存,這個內存可以記錄每個Switch port與其鏈接的PC的MAC地址,所以當來自Switch兩端的PC要相互傳輸時,每個數據幀將通過交換機內存數據而傳送到目標主機上,且每個端口有獨立的帶寬,全雙工工作機制,工作于數據鏈路層,如果是三層交換機(具有路由功能),則工作于網絡層。

    TCP/IP的網絡層相關數據包與數據

       IP數據包的封裝

       了解IP數據包的封裝,才能知道IP到底時如何產生的,IP數據包可達到65536bytes

1.png.jpg

       Ver:聲明這個IP數據包的版本

       IHL:數據包的包頭長度,4個字節一個單位

       Service:服務類型

           PPP:表示IP數據包的優先級,很少使用;

         D:若為0表示一般延遲,若為1表示為低延遲;

         T:若為0表示一般傳輸量,若為1表示高傳輸量;

         R:若為0表示為一般可靠度,若為1表示高可靠度。

       Packet Length:IP總長度,包括包頭和數據部分,最大可達到65535bytes

       Identification:識別碼,上面介紹過幀的默認最大傳輸單元為1500bytes,而IP包最大可以到65536bytes,那么要想將IP包封裝到數據幀中就必須將其分割成更小的IP包,那個這個識別碼就是用于識別這此小的IP分段是否來自同一個IP包。

       Flag:D:若為0表示可以分段,若為1表示不可分段;

          M:若為0表示此IP為最后分段,若為1表示非最后分段。

       Frag Offset:表示目前這個IP分段在原始的IP包中所處的位置,相當于這個IP分段的序號。通過包的總長度、識別碼、特殊標志、分段偏移就可以將小的IP分段在接收端組合成完整的IP數據包。

       Time to Live:范圍0-255。當數據包通過一個路由器時就會減1,當TTL為0時數據包被丟棄,linux中 可通過修改 /etc/sys/net/ipv4/ip_default_ttl來設置ttl的大小,默認64  windows 128

       Protocol:記錄來自傳輸層和網絡層本身的協議信息。常見代碼如下:

             1:ICMP

             4:IP

             6:TCP

             17:UDP

        Header Checksum(報頭校驗碼):用于檢查IP報頭是否存在錯誤。

        Source Address(源IP地址):發送端的IP地址。

        Destination Address(目標IP地址):接收端的IP地址。

        Options(其它參數):包括安全處理機制、路由記錄、時間戳等

    ICMP協議:因特網信息控制協議

      ping與traceroute就是利用ICMP來檢驗網絡的狀態的。—–探測網絡狀態的

            禁用ping命令:root@cenots6.8  ~ # cat /proc/sys/net/ipv4/icmp_echo_ignore_all 

               0  —–將該位置為1    

            啟用ping廣播地址root@cenots6.8  ~ # cat /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts 

               1 ——–將該為置為0   可用于探測網絡中有哪些主機啟動,哪些主機處于關機狀態

          補腦:Dos 攻擊 Ping –f 10.1.250.95 –s 65507泛洪  發送大量數據包給該ip,查看網卡利用率會很高,DDOS 成千上萬臺計算機給指定計算機發送大量數據包

     ARP網絡地址解析協議

     RARP反向網絡地址解析協議

        當我們想要了解某個IP配置于哪張以太網卡上面,我們主機會對整個局域網發送出ARP數據包,對方接收到ARP數據包后就會返回他們的MAC給我們,知道對方的網卡地址后就可以傳遞數據了,當ARP協議取得目標IP與它的網卡卡號后,就會將其記錄到ARPtable(內存中)中記錄20分鐘,linux中對應命令 arp –n.

     TCP/IP的傳輸層相關數據包與數據

       面向鏈接的可靠的TCP協議

             在網絡的IP之上是傳輸層,在傳輸層數據被打包層TCP數據包。

1.png

            

2.png.jpg

        源端口:端口是用來標記應用程序的,源端口是連接發起端使用的端口,通常為隨機端口。

        目的端口:常用的應用都會規定有固定的端口號,如http使用80端口,ssh使用22端口。

        順序號:當IP包過太時,需要對包進行分段。順序號就是記錄每個數據包的順序,以方便接收端將包重新組合。

        確認號:當接收端收到數據包后會向發送端發送確認號,告訴發送端數據包被正確傳遞。

        TCP頭長:用于調整整個TCP數據包的大小,說明整個數據包字段的起始位置。

         控制標志碼:

              URG:為1代碼為緊急數據包,接收端應緊急處理。

              ACK:為1代表這人數據包為響應數據包。

              PSH:為1代表要求對方立即傳送緩沖區的其他對應數據包,而無須等待緩沖區滿了才送。

              RST:為1代表連接會被馬上結束,強制結束連接。

              SYN:為1代表發送端希望雙方建立同步連接,表示主動連接對方。

              FIN:為1代表傳送結束。

         窗口大小:用于控制數據包流量,表示緩沖區是否還可以接收數據,為0表示無法接收數據。

          校驗和:發送端首先會計算一個檢驗碼,接收端收到數據包后會再次計算這個值,如果兩個值相符合就接受數據包,否則就認為此數據包已損壞。

          緊急指針:URG為1時才有作用,告知緊急數據所在的位置。

          可選項:表示接收端可以接收的最大數據段容量。為1代表連接會被馬上結束,強制結束連接。

       TCP的三次握手

         A:數據包發起。

               發起端隨機使用一個大于1024的端口發起請求,在TCP報頭中標記SYN為1。

         B:數據包接收并確認。

               接收端收到數據包后,回自復一個帶有SYN=1,ACK=1的數據包,告訴發送方已接收到數據包,并等發起端的回復。

         C:回復確認數據包。

               發起端收到確認數據包后再次發送一個確認數據包(ACK=1),告訴接收端可以建立連接。

          D:建立連接。

               接收端收到ACK=1的確認數據包后,就可以建立起連接了

     無連接的UDP協議

          UDP全程的全程是用戶數數據報協議,UDP與TCP不一樣,UDP不提供可靠的傳輸模式,因為它不是面向鏈接的機制,這是因為UDP傳送過程中,接收端在接收到數據包之后,不會回復相應數據包給發送端,所以數據包并沒有像TCP數據包有嚴謹的檢查機制。(一直在發送信息,你有沒收到我不知道,我也不等待你給我回應,我就是一直發)

三、IP的組成與分級

    IP地址:它可以唯一表示IP網絡中的每臺設備,每臺主機(計算機、網絡設備、外圍設備)必須有唯一的地址。

      Net_ID與Host_ID

         在同一網段內,Net_Id是不變的,而Host_ID是不可重復的,此外,Host_ID在二進制的表示法中,可以同時為0,也不可同時為1,例如:192.168.0.0/255.255.255.0就是屬于網絡地址,192.168.0.255/255.255.255.0 就屬于廣播地址

         Host_ID同時為0表示網絡地址(Network_IP)

         Net_ID同時為1表示廣播地址(BroadcastIP)

    在局域網內通過IP廣播傳遞數據

       在相同物理網段的主機如果使用相同的網絡IP范圍,則這些主機都可以通過CSMA/CD的功能直接在局域網內用廣播進行網絡的鏈接,即直接通過MAC數據來進行數據傳遞

    IP的分級

1.png

2.png

     IP的種類與取得方式

         在IPV4中兩種IP類別:

            Public IP:公共IP,經由InterNIC統一規劃的IP,只有這種IP才可鏈接到Internet

             Private IP:私有IP或保留IP,不能直接連上Internet的IP,主要用于局域網絡內的主機鏈接規劃

                私有IP網段:

                      Class A:10.0.0.0/8~10.255.255.255/8        

                      Class B:172.16.0.0/16~172.31.255.255/16    CIDR格式:172.16.0.0/12

                      Class C:192.168.0.0/24~192.168.255.255/24  CIDR格式:192.168.0.0/16

              由于這三段Class的IP是預留使用的,所以并不能直接作為Internet上面的連接使用,否則會導致到處都有相同的IP。

     Netmask、子網與CIDR

          Netmask:子網掩碼

              將Net_ID處全部標記為1,Host_ID處全部標記為0就可計算出netmask的值。–與ip地址相與得到網絡地址。

          劃分子網:一個大網絡分成若干個子網

                  網絡ID向主機ID借位n位n,子網數為2^n,

                  損失IP數=(2^n-1)*2

          劃分超網:合并多個小的子網成一個大的超網

                  主機ID向網絡位ID借位,劃分超網時,需要注意不網絡的范圍,如果合并范圍包含其他公司的網絡則不能劃分。

          應用舉例:

           1、某公司申請到一個C 類IP 地址,但要連接6 個的子公司,最大的一個子公司有26 臺計算機,每個子公司在一個網段中,則子網掩碼應設為? 

             分析:由于6個子公司,每個子公司要在一個單獨的網段中,因此至少需要2^n>=6,因此能夠得到n=3,最大主機數2^(8-3)-2=30個網絡,滿足大于等于26的需求                

                     192.168.0.000 00001

                     192.168.0.000 11110     

                     …….

                     192.168.0.101 00001

                192.168.0.101 11110   第6個網絡的地址

                 因此能夠得到:

                     192.168.0.1/27 – 192.168.0.161/27 第一網絡的地址及范圍

                     …….

                     192.168.0.1/27 – 192.168.0.190/27 第六個網絡的地址及范圍              

           2、一家集團公司有12家子公司,每家子公司又有4個部門。上級給出一個172.16.0.0/16的網段,讓給每家子公司以及子公司的部門分配網段。

              分析:因為有12個子公司,因此至少要劃分2^n>=12個子網,因此能夠得到n=4,因此需要向主機位借4個,能夠劃分16個子網,但是只用12個,剩余4個閑置,因此劃分后得到:

                     172.16.0.0/16劃分16個子網

                     172.16.0000 0000.00000001  ———  172.16.0.1/20

                     172.16.0000.1111.11111110  ———  172.16.15.254/20     第一個網絡的地址及范圍

                      ………

                     172.16.1011 0000.00000001  ———  172.16.176.1/20

                     172.16.1011 1111.11111110  ———  172.16.191.254/20    第十二個網絡地址及范圍

                     ………

                     172.16.1111 0000.00000001  ———  172.16.240.1/20

                     172.16.1111 1111.11111110  ———  172.16.255.254/20    最后一個網絡地址及范圍

                   又因為每個公司又有4個部分,因為要在12個子網的基礎上再次劃分子網,所以還需要在向主機位借2位即可, 下面以第一個子公司劃分為4個子網為例,因此又能夠得到:

                     172.16.0000 00 00.00000001  ———  172.16.0.1/22   

                     172.16.0000 00 00.11111110  ———  172.16.0.254/22    第一個網絡地址及范圍

                     ………

                     172.16.0000 11 00.00000001  ———  172.16.12.1/20

                     172.16.0000 11 00.11111110  ———  172.16.12.254/20    第四個網絡地址及范圍

    特殊地址:   

          0.0.0.0:不是一個真正意義上的IP地址。它表示一個集合:所有不清楚的主機和目的網絡。

          255.255.255.255:限制廣播地址。對本機來說,這個地址指本網段內(同一廣播域)的所有主機

          127.0.0.1~127.255.255.254:本機回環地址,主要用于測試。在傳輸介質上永遠不應該出現目的地址為“ 127.0.0.1”的 數據包。

          224.0.0.0到239.255.255.255:組播地址, 224.0.0.1特指所有主機, 224.0.0.2特指所有路由器。

          224.0.0.5:指OSPF 路由器,地址多用于一些特定的程序以及多媒體程序

          169.254.x.x:如果Windows主機使用了DHCP自動分配IP地址,而又無法從DHCP服務器獲取地址,系統會為主機分配這樣地址。

               

四、路由

     路由的功能:跨網絡通信時選擇傳輸路徑。

     路由的分類:

           主機路由:目標地址為單個IP

           網絡路由:目標地址為IP網絡

           默認路由:目標為任意主機  0.0.0.0/0.0.0.0.0

     接口:自己路由器上面一個能夠指向目標地址的端口            

                        root@cenots6.8  ~ # dmesg | grep -i eth  查看網卡驅動模塊信息

                        e1000 0000:02:01.0: eth0: (PCI:66MHz:32-bit) 00:0c:29:c4:17:61

                        e1000 0000:02:01.0: eth0: Intel(R) PRO/1000 Network Connection

                        root@cenots6.8  ~ # rmod e1000 或modprobe -r e1000

                        root@cenots6.8  ~ # lsmod |grep e1000 查看模塊信息

                        root@cenots6.8  ~ # modprobe e1000 在把模塊加載回來        

     網關:指向目標地址的下一個路由器的臨近接口,這里需要注意的是主機與你的主機配置的gateway一定要在同一網段內。

     DNS:將主機名解析為IP地址        

          配置文件:/etc/resolv.conf

          本地dns數據庫:/etc/hosts里面可以自行指定ip地址和主機名,且主機名可以有多個別名,然后ping主機名就可以看到對應的ip地址       

          將主機名解析為ip地址

             dig -t A www.magedu.com((dig 測試時,是不會查看/etc/hosts的,而是通過DNS服務器查看的)

             dig-t A FQDN  解析主機名為ip

                 FQDN–> IP

             dig -x IP 解析ip為主機名  但是互聯網上面大多數服務器都不支持反解 

      DNS服務器地址:

             114.114.114.114(china)

             8.8.8.8(谷歌)

      網絡配置文件:/etc/sysconfig/network-scripts/ifcfg-接口名稱

            DEVICE=接口名稱  定義接口名稱:/etc/udev/rules.d/70-persistent-net.rules 需要注意的是兩個文件中接口名稱必須一致,否則會報錯

            TYPE=Ethernet

            UUID:設備唯一標識

            ONBOOT:是否開機自動連接

            NM_CONTORLLED=yes 是否接受NetworkManager控制   service NetworkManager status ,該服務在centos6 中不穩定,建議no

            BOOTPROTO=static none dhcp 或者把這行干掉直接寫IPADDR

            IPADDR=ipv4地址

            NETMASK=子網掩碼

            PREFIX=子網掩碼的簡單格式

            GATEWAY=網關

            DNS1=8.8.8.8(谷歌的網關)

            DNS2=114.114.114.114(中國的網關) 網關可以加三個

            DNS3=8.8.4.4(谷歌的)

            HWADDR=網卡地址  如果要改mac地址需要用MACADDR名字

            PEERDNS=yes 如果BOOTPROTO的值為“ dhcp”,是否允許dhcp server分配的dns服務器指向信息直接覆蓋至

            ONPARENT=yes  物理網卡啟動就啟動別名

    

        最省略寫法:2行

           DEVICE=eth1

           BOOTPROTO=dhcp

        靜態配置IP地址:

             DEVICE=eth1

             IPADDR=10.1.1.1

             PREFIX=16

             GATEWAY=10.1.1.254

             DNS1=8.8.8.8

          注意:配置完成后要重新啟動服務 service network restart

     網絡接口設備別名:為每個設備別名生成獨立的接口配置文件,在啟用之前首先要關閉NetworkManager服務,且必須使用靜態IP。

          service NetworkManager stop(臨時關閉)/chkconfig NetworkManager off(下次開機時關閉)

    網絡接口配置bonding:

           將多塊網卡綁定同一個IP地址對外提供服務,可以實現高可用和負載均衡,直接給兩塊網卡綁定一個IP是不可能的,通過bonding虛擬一塊網卡對外提供鏈接,但是需要兩塊網卡修改為同一個MAC地址。

           bonding的工作模式:           

                Mode 0 (balance-rr)  輪詢模式

                      輪轉( Round-robin)策略:從頭到尾順序的在每一個slave

                  接口上面發送數據包。本模式提供負載均衡和容錯的能力

                   ——輪流的往網卡上面發數據包,兩個網卡都走數據,第一個用戶來了請求第一個快網卡,第二個用戶來了請求第二塊網卡,如果二塊網卡壞了,來了第一個用戶,第一個網卡,來了第二個就可能走第二塊網卡,因此能夠實現均勻負載,但容錯能力較差。

                Mode 1 (active-backup)  

                     活動-備份(主備)策略:在綁定中,只有一個slave被激活。

                     當且僅當活動的slave接口失敗時才會激活其他slave。為了避免交換機發生混亂此時綁定的MAC地址只有一個外部端口上可見

                   —–主備模式,兩塊網卡,默認第二塊是不工作的,只有第一塊網卡壞了才工作,性能不好,有容錯性

                Mode 3 (broadcast)

                     廣播策略:在所有的slave接口上傳送所有的報文。本模式提供容錯能力。

           配置方法:

               root@cenots6.8  /etc/sysconfig/network-scripts # cat ifcfg-eth1 ifcfg-eth2 

                       DEVICE=eth1

                       SLAVE=yes

                       MASTER=bond0

                       DEVICE=eth2

                       SLAVE=yes

                       MASTER=bond0

              root@cenots6.8  /etc/sysconfig/network-scripts # cat ifcfg-bond0 

                       DEVICE=bond0

                       IPADDR=192.168.1.105

                       PREFIX=24

                       GATEWAY=192.168.1.1

                       DNS1=8.8.8.8

                       BONDING_OPTS="miimon=100 mode=1"

           miimon:是用來進行鏈路監測的。如果miimon=100,那么系統每100ms 監測一次鏈路連接狀態,如果有一條線路不通就轉入另一條線路

           cat /proc/net/bonding/bond0 可以查看綁定信息

         如需卸載:先ifconfig bond0 down 然后rmmod bonding 卸載掉該模塊

           實驗時,IP地址可以配置與自己windows中的IP在一個網段,在虛擬機圖形界面右下角,網卡圖標點擊斷開連接進行測試,在windows界面ping配置的IP地址即可。

       路由功能實例:現有路由R1和R2,R1有兩個接口分別是R1-0和R1-1,R1-0鏈接網絡192.168.0.1/24,R1-1連接網絡10.0.0.1/8 且與路由R2路由的R2-1接口相連,R2-1的接口地址為10.0.0.2/8,R2-0的接口連接網絡172.16.0,1/16.

1.png

          因此可以得到

           R1的路由表為:  

               網絡地址          接口        網關

               172.16.0.0/16       R1-1        10.0.0.2  注意在添加路由表的時候不用添加相鄰網段的,加不相鄰的就可以,因此 配置路由表示 添加此網絡即可

               192.168.0.0/24      R1-0        192.168.0.1

               10.0.0.0/8         R1-1        10.0.0.1          

            R2的路由表

               網絡地址          接口        網關

               192.168.0.0/24      R2-1        10.0.0.1  注意在添加路由表的時候不用添加相鄰網段的,加不相鄰的就可以,因此 配置路由表示 添加此網絡即可

               10.0.0.0/8         R2-1        10.0.0.2

               172.16.0.0/16       R2-0        172.16.0.1

          模擬實例:分別用兩個centos6虛擬機,模仿兩個路由,每個虛擬機要用有兩個虛擬網卡,模擬兩個接口,具體設置如下:

              R1的網卡中的配置文件:

                 ifcfg-eth0

                     DEVICE=eth0

                     IPADDR=192.168.0.1

                     PREFIX=24

                 ifcfg-eth1

                     DEVICE=eth1

                     IPADDR=10.0.0.1

                     PREFIX=8

                配置完成后重啟網絡服務: service network restart  該步一定要放在route add 之前,否則route add添加的內容會被刷掉

            route add -net 172.16.0.0/16 gw 10.0.0.2 dev eth1

            配置完成后截圖如下:

2.png

                當做路由器使用必須要啟用:echo 1 > /proc/sys/net/ipv4/ip_forward 啟用路由轉發功能

                關閉防火墻:iptables -F

               R2的網卡中的配置文件:

                 ifcfg-eth0

                     DEVICE=eth16777736

                     IPADDR=172.16.0.1

                     PREFIX=16

                 ifcfg-eth1

                     DEVICE=eth33554984

                     IPADDR=10.0.0.2

                     PREFIX=8

            

             配置完成后重啟網絡服務: service network restart

                 route add -net 192.168.0.0/24 gw 10.0.0.1 dev eth33554984

             配置完成后截圖如下:

1.png

                

                當做路由器使用必須要啟用:echo 1 > /proc/sys/net/ipv4/ip_forward 啟用路由轉發功能

                關閉防火墻:iptables -F

            找兩個主機分別配置 192.168.0.100/24 gw 192.168.1.1 

                         172.16.0.100/16 gw  172.16.0.1 

            兩個主機相互ping對方主機地址  根據ttl 經過路由的狀態,查看工作是否正常。

            也可以根據tracert  172.16.0.100 查看跳數

    

注意:echo 1 > /proc/sys/net/ipv4/ip_ipforward 由于是內核文件存不住盤,因此可以修改/etc/sysctl.conf 使其永久有效,sysctl -p 重新讀改過的文件

原創文章,作者:Naruto,如若轉載,請注明出處:http://www.www58058.com/43559

(10)
NarutoNaruto
上一篇 2016-09-06
下一篇 2016-09-07

相關推薦

  • 文本處理工具-awk

    文本處理工具awk awk的名字由來:創始人Aho, Weinberger, Kernighan三人的首字母 有多種版本:New awk(nawk),GNU awk(gawk)  一.gawk   模式掃描和處理語言   基本用法: awk [options] ‘program’ var=value…

    Linux干貨 2016-11-29
  • Linux運維之進程管理

    一、進程概念 進程是內核的一個功能,在Linux中,運行一個程序或命令可以出發一個事件而驅動一個PID,在linux系統中,系統只識別二進制程序文件,我們可以通過執行系統上的二進制程序來運行程序,進而產生進程。在linux系統中第一個進程是init程序,它是系統開機第一個加載的程序,用來支撐系統的正常運行的一個程序,內核啟動的一個用戶級進程。   …

    Linux干貨 2016-09-09
  • N25期—第五周作業

    1、 顯示當前系統上root、fedora或user1用戶的默認shell; grep -E "^(root|fedora|user1):" /etc/passwd | cut -d: -f7 2、找出/etc/rc.d/init.d/functions文件中某單詞后面…

    Linux干貨 2017-01-02
  • 基于samba服務的wordpress站點

    實驗要求:             (1) samba server導出/data/app/web,在目錄中提供wordpress;     (2) samba  client掛載nfs server導出的文件…

    2017-06-08
  • CentOS6主機啟動流程

    CentOS6主機啟動流程 流程 一臺Linux主機從開機到登錄界面提示輸入賬號密碼的時間中進行了好多動作,了解這些動作有助于了解Linux系統的過程,并能夠對開機過程出現的故障進行troubleshooting。 主機啟動后最先運行的是主板階段,一旦電源開啟,主板進行POST加點自檢動作,自檢完成后無故障,主板會讀取BIOS信息,根據BIOS信息中的Boo…

    Linux干貨 2017-05-13
欧美性久久久久