Linux 入門記錄:十四、網路基礎

来源:http://www.cnblogs.com/mingc/archive/2017/09/27/7599730.html
-Advertisement-
Play Games

一、IP地址 IP 地址是網際網路上的每個網路節點在全球範圍內的唯一標識符,一個 IP 地址唯一標識一個主機(嚴格來說是標識一個網卡介面 network interface card)。 現在應用最為廣泛的是 IPv4 地址,已逐漸向 IPv6 地址切換。IPv4 地址為 32 位長,IPv6 地址為 ...


一、IP地址

IP 地址是網際網路上的每個網路節點在全球範圍內的唯一標識符,一個 IP 地址唯一標識一個主機(嚴格來說是標識一個網卡介面 network interface card)。

現在應用最為廣泛的是 IPv4 地址,已逐漸向 IPv6 地址切換。IPv4 地址為 32 位長,IPv6 地址為 128 位長。這裡主要討論 Ipv4 地址。

一個 IPv4 地址分為兩個部分:網路部分(網路號)和主機部分(主機號)。網路部分用來標識所屬網路區域,主機部分用來標識該區域中的哪台主機。

所以整個 Internet 上的每台電腦都依靠各自惟一的 IP 地址來標識。

 

二、IPv4地址

IPv4 地址是一個 32位 的二進位串,如 11001010011100010100010010101101 。為了提高可讀性,我們常把 32 位 IPv4 地址中的每 8 位轉換為對應的十進位,併在每個十進位數之間插入一個點,即 202.113.68.173,這種記法就是常用的點分十進位記法

 

三、子網掩碼

子網掩碼(subnet mask)又叫網路掩碼、地址掩碼、子網路遮罩,它是一種用來指明一個 IP 地址的哪些位標識的是主機所在的子網,以及哪些位標識的是主機的位掩碼。子網掩碼不能單獨存在,它必須結合 IP 地址一起使用。子網掩碼只有一個作用,就是將某個 IP 地址劃分成網路地址和主機地址兩部分。子網掩碼是一個 32 位地址,用於屏蔽 IP 地址的一部分以區別網路標識和主機標識,並說明該 IP 地址是在區域網上,還是在遠程網上。(引用自互動百科)

 

怎樣判斷不同 IP 在同一個區域網(網段)?

方法1:比較它們的網路號是否相同。

將 IP 號和子網掩碼進行與運算,就可以得到網路號了。

方法2:直接用一臺電腦 ping 另一臺電腦的 IP。

如果收到數據包,則在同一區域網;如果接收超時,則不在同一區域網。

 

四、同一網路之間進行通信

同一網路下,主機之間基於 ARP 協議解析出對方的 MAC 地址,通過交換機實現信息幀的轉發,進而實現通信。

 

1. MAC地址(Media Access Control Access,媒體訪問控制地址)

MAC 地址中的 MAC ,人們習慣上把它稱之為網卡地址、硬體地址、適配器地址,是一種物理地址,如同我們的身份證號,具有全球唯一性。

MAC 地址用一個十六進位數字來表示,共 6 位元組 48 位,前 3 位元組(高 24 位)是由 IEEE 的註冊管理機構 RA 負責給不同廠家分配的代碼,也稱為“編製上唯一的標識符”,後 3 位元組(低 24 位)由各廠家自行指派給生產的適配器介面,稱為擴展標識符(唯一性)。一個地址塊可以生成 2 ^ 24 個不同的地址。

 

2. ARP(Address Resolution Protocol,地址解析協議)

在 TCP/IP 網路環境下,每個主機都分配了一個 IP 地址,這種互聯網地址是在網際範圍標識主機的一種邏輯地址。為了讓報文在物理網路上傳送,必須知道對方目的主機的物理地址(MAC 地址)。這樣就存在把 IP 地址變換成 MAC 地址的地址轉換問題。以乙太網環境為例,為了正確地向目的主機傳送報文,必須把目的主機的 IP 地址轉換成為 MAC 地址。這就需要在互連層有一組服務將 IP 地址轉換為相應的 MAC 地址,這組協議就是 ARP 協議。APR 協議實現了通過 IP 地址解析出物理地址,保證了通信的順利進行。

 

3. 交換機(switch hub)

交換機是一種用於電(光)信號轉發的網路設備。它可以為接入交換機的任意兩個網路節點提供獨享的電信號通路,實現信息幀的轉發,也稱為交換式集線器。

 

五、不同網路之間通信

不同的網路下,需要經過路由(網關)轉發實現主機間的通信。實現路由轉發的可以是路由器(網關)或具有路由功能的主機。

 

路由

在不同網路之間傳輸數據的功能叫做路由功能,具有路由功能的設備叫做路由器,路由器一般有多個介面,連接到不同的網路中,並且通過路由表進行數據轉發。

路由表中包含一系列路由規則,可用於判斷網路流量的導向目的地。

 

六、功能變數名稱

IP 地址很難記憶,使用一個名稱更容易。用於表示 TCP/IP 地址的名字被稱為功能變數名稱。

一個完整的功能變數名稱分為三個部分,用 "." 分割:

  • 類型:標識該功能變數名稱的類型(com, net, org, edu, gov 等等)
  • 功能變數名稱:功能變數名稱稱
  • 主機名:該域中的某台主機名稱

例如 "www.cnblogs.com","www" 主機名,"cnblogs" 功能變數名稱,"com" 類型,連起來就是“cnblogs.com這個功能變數名稱下的 www 主機”。

 

七、DNS(Domain Name System,功能變數名稱解析伺服器)

每個功能變數名稱代表一個 IP,而 DNS 伺服器就是用來在功能變數名稱和 IP 之間進行雙向解析的。

 

八、基本網路配置參數

1. 配置一個區域網通信的電腦,需要:

  • IP 地址
  • 子網掩碼

 

2. 配置一個跨網段通信的電腦,需要:

  • IP 地址
  • 子網掩碼
  • 網關

 

3. 配置一個可上網通信的電腦,需要:

  • IP 地址
  • 子網掩碼
  • 網關
  • DNS

 

參考鏈接:

網路基礎知識整理

Ipv4地址和下一代IP地址

怎麼判斷兩個IP在同一個區域網?

MAC地址是什麼?

ARP協議


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1 修改network配置文件 vi /etc/sysconfig/network 將配置文件中的HOSTNAME的內容改成需要修改的主機名 2 修改hosts配置文件 vi /etc/hosts 將配置文件中的localhost.localdomain改成需要修改的主機名 3 重啟機器 reboo ...
  • 本文目錄1.1 下載和解決依賴關係1.2 httpd編譯選項1.3 模塊動靜態編譯1.4 動靜態編譯的優先順序規則1.5 MPM的安裝1.6 關於"--enable-so"1.7 開始編譯httpd1.8 編譯後的規範操作 1.1 下載和解決依賴 以httpd 2.4.27為例。 資源下載: apac ...
  • 在上一節LCD層次分析中,得出寫個LCD驅動入口函數,需要以下4步: 1) 分配一個fb_info結構體: framebuffer_alloc(); 2) 設置fb_info 3) 設置硬體相關的操作 4) 使能LCD,並註冊fb_info: register_framebuffer() 本節需要用 ...
  • 1》rsync概述 rsync的優點與不足 rsync與傳統的cp、tar備份方式相比,rsync具有安全性高、備份迅速、支持增量備份等優點,通過rsync可以解決對實時性要求不高的數據備份需求,例如定期的 備份文件伺服器數據到遠端伺服器,對本地磁碟定期做數據鏡像等。 隨著應用系統規模的不斷擴大,對 ...
  • 以下是playbook的內容。它的處理流程是: 1.先在本地下載apr,apr-util,httpd共3個.tar.gz文件。 2.解壓這3個文件。 3.安裝pcre和pcre-devel依賴包。 4.編譯安裝apr。 5.編譯安裝apr-util。 6.編譯安裝httpd。 編譯完成後,還有一系列 ...
  • 摘要:涉及到網路安全這一塊,想必大家都聽過CA吧。像百度、淘寶、京東等這些知名網站,每年都要花費一筆money來買CA證書。但其實簡單的企業內的CA認證,我們自己就可以實現,今天小編我就講解一下怎麼在企業局部實現CA認證。 一、CA介紹 1、電子商務認證授權機構(CA, Certificate Au ...
  • 如果我們的系統要用GUI(圖形界面介面),這時LCD設備驅動程式就應該編寫成frambuffer介面,而不是像之前那樣只編寫操作底層的LCD控制器介面。 什麼是frambuffer設備? frambuffer設備層是對圖像設備的一種抽象,它代表了視頻硬體的幀緩存,使得應用程式通過定義好的介面就可以訪 ...
  • Sed Sed:是一款流編輯工具,用來對文本進行過濾與替換工作,特別是當你想對幾十個配置文件進行統一修改時,你會體會到它的魅力;Sed通過一次僅讀取一行內容來對某 些指令進行處理後輸出,所以Sed更適合處理大數據文件;Sed通過文件或管道讀取文件內容,但它預設並不直接修改源文件,而是將讀入的內容複製 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...