網路介面掃盲

2021-07-26 21:31:39 字數 1163 閱讀 1857

(1)網路介面的命名

這裡並不存在一定的命名規範,但網路介面名字的定義一般都是要有意義的。例如:

eth0: ethernet的簡寫,一般用於乙太網介面。

wifi0:wifi是無線區域網,因此wifi0一般指無線網路介面。

ath0: atheros的簡寫,一般指atheros晶元所包含的無線網路介面。

lo:   local的簡寫,一般指本地環迴介面。

(2)網路介面如何工作

網路介面是用來傳送和接受資料報的基本裝置。

系統中的所有網路介面組成乙個鏈狀結構,應用層程式使用時按名稱呼叫。

每個網路介面在linux系統中對應於乙個struct net_device結構體,包含name,mac,mask,mtu…資訊。

每個硬體網絡卡(乙個mac)對應乙個網路介面,其工作完全由相應的驅動程式控制。

(3)虛擬網路介面

虛擬網路介面的應用範圍非常廣泛。最著名的當屬「lo」了,基本上每個linux系統都有這個介面。

虛擬網路介面並不真實地從外界接收和傳送資料報,而是在系統內部接收和傳送資料報,因此虛擬網路介面不需要驅動程式。

虛擬網路介面和真實存在的網路介面在使用上是一致的。

(4)網路介面的建立

硬體網絡卡的網路介面由驅動程式建立。而虛擬的網路介面由系統建立或通過應用層程式建立。

驅動中建立網路介面的函式是:register_netdev(struct net_device *)或者register_netdevice(struct net_device *)。

這兩個函式的區別是:register_netdev(…)會自動生成以」eth」作為打頭名稱的介面,而register_netdevice(…)需要提前指定介面名稱.事實上,register_netdev(…)也是通過呼叫register_netdevice(…)實現的。

2、linux中的lo(回環介面)

1) 什麼是lo介面?

在linux系統中,除了網路介面eth0,還可以有別的介面,比如lo(本地環路介面)。

2) lo介面的作用是什麼?

part2 實驗:

本地乙個程序發起連線,到乙個本地的daemon監聽的內網ip位址(eth1: 10.1.1.1)的埠(8085),此時在eth1上是抓不到包的,在 lo 上抓到,說明使用的是本地回環介面lo,而網路層的ip位址則是內網ip位址.

Go介面掃盲

var r rune 文 fmt.printf u n r 通過range可以遍歷乙個字串中所有的rune const nihongo one world世界大同 for index,runevalue range nihongo 因為字串是以utf 8編碼的,通過輸出可以看到ascii字母只用乙個...

網路知識掃盲 DNS

一 dns 是什麼?dns是 domain name system 的縮寫,也就是網域名稱解析系統,它的作用非常簡單,就是根據網域名稱查出對應的 ip位址。你可以把它想象成一本巨大的 本,比如當你要訪問網域名稱www.163.com,首先要通過dns查出它的ip位址是112.48.162.8。二 網...

C C socket網路程式設計掃盲篇

socket 是 套接字 的意思,是計算機之間進行通訊的一種約定,也可以認為是一種技術。通過 socket 這種約定,一台計算機可以接收其他計算機的資料,也可以向其他計算機傳送資料。學習 socket,就是學習計算機之間如何通訊,並能夠用程式語言開發出實用的程式。計算機分布在世界各地,要想和它們通訊...