本篇內(nèi)容主要講解“l(fā)inux中的lo有什么作用”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“l(fā)inux中的lo有什么作用”吧!
成都創(chuàng)新互聯(lián)專業(yè)提供重慶服務(wù)器托管服務(wù),為用戶提供五星數(shù)據(jù)中心、電信、雙線接入解決方案,用戶可自行在線購(gòu)買(mǎi)重慶服務(wù)器托管服務(wù),并享受7*24小時(shí)金牌售后服務(wù)。
在linux中,lo是local的簡(jiǎn)寫(xiě),是指本地環(huán)回接口;利用這個(gè)接口可以實(shí)現(xiàn)系統(tǒng)內(nèi)部發(fā)送和接收數(shù)據(jù),主要作用是檢測(cè)本機(jī)的網(wǎng)絡(luò)配置、提供某些應(yīng)用程序在運(yùn)行時(shí)需調(diào)用服務(wù)器上的資源。
本教程操作環(huán)境:linux7.3系統(tǒng)、Dell G3電腦。
lo: local的簡(jiǎn)寫(xiě),一般指本地環(huán)回接口。
lo接口的作用
本地一個(gè)進(jìn)程發(fā)起連接,到一個(gè)本地的daemon監(jiān)聽(tīng)的內(nèi)網(wǎng)IP地址(eth2: 10.1.1.1)的端口(8085),此時(shí)在eth2上是抓不到包的,在 lo 上抓到,說(shuō)明使用的是本地回環(huán)接口lo,而網(wǎng)絡(luò)層的IP地址則是內(nèi)網(wǎng)IP地址.
lo其實(shí)是一個(gè)系統(tǒng)虛擬的環(huán)回接口,它的IP地址是127.0.0.1,利用這個(gè)接口可以實(shí)現(xiàn)系統(tǒng)內(nèi)部發(fā)送和接收數(shù)據(jù),所以一般情況下我們使用:ping 127.0.0.1 是可以ping通的,因?yàn)檫@其實(shí)就是系統(tǒng)內(nèi)部建立連接。
127.0.0.1,通常被稱為本地回環(huán)地址(Loop back address),不屬于任何一個(gè)有類(lèi)別地址類(lèi)。它代表設(shè)備的本地虛擬接口,所以默認(rèn)被看作是永遠(yuǎn)不會(huì)宕掉的接口。通常在不安裝網(wǎng)卡前就可以ping通這個(gè)本地回環(huán)地址。一般都會(huì)用來(lái)檢查本地網(wǎng)絡(luò)協(xié)議、基本數(shù)據(jù)接口等是否正常的。
其主要作用有兩個(gè):
一是測(cè)試本機(jī)的網(wǎng)絡(luò)配置,能PING通127.0.0.1說(shuō)明本機(jī)的網(wǎng)卡和IP協(xié)議安裝都沒(méi)有問(wèn)題;
另一個(gè)作用是某些SERVER/CLIENT的應(yīng)用程序在運(yùn)行時(shí)需調(diào)用服務(wù)器上的資源
1.網(wǎng)絡(luò)接口的命名
這里并不存在一定的命名規(guī)范,但網(wǎng)絡(luò)接口名字的定義一般都是要有意義的。例如:
eth0: ethernet的簡(jiǎn)寫(xiě),一般用于以太網(wǎng)接口。
wifi0:wifi是無(wú)線局域網(wǎng),因此wifi0一般指無(wú)線網(wǎng)絡(luò)接口。
ath0: Atheros的簡(jiǎn)寫(xiě),一般指Atheros芯片所包含的無(wú)線網(wǎng)絡(luò)接口。
lo: local的簡(jiǎn)寫(xiě),一般指本地環(huán)回接口。
2.網(wǎng)絡(luò)接口如何工作
網(wǎng)絡(luò)接口是用來(lái)發(fā)送和接受數(shù)據(jù)包的基本設(shè)備。
系統(tǒng)中的所有網(wǎng)絡(luò)接口組成一個(gè)鏈狀結(jié)構(gòu),應(yīng)用層程序使用時(shí)按名稱調(diào)用。
每個(gè)網(wǎng)絡(luò)接口在linux系統(tǒng)中對(duì)應(yīng)于一個(gè)struct net_device結(jié)構(gòu)體,包含name,mac,mask,mtu…信息。
每個(gè)硬件網(wǎng)卡(一個(gè)MAC)對(duì)應(yīng)一個(gè)網(wǎng)絡(luò)接口,其工作完全由相應(yīng)的驅(qū)動(dòng)程序控制。
3.虛擬網(wǎng)絡(luò)接口
虛擬網(wǎng)絡(luò)接口的應(yīng)用范圍非常廣泛。最著名的當(dāng)屬“l(fā)o”了,基本上每個(gè)linux系統(tǒng)都有這個(gè)接口。
虛擬網(wǎng)絡(luò)接口并不真實(shí)地從外界接收和發(fā)送數(shù)據(jù)包,而是在系統(tǒng)內(nèi)部接收和發(fā)送數(shù)據(jù)包,因此虛擬網(wǎng)絡(luò)接口不需要驅(qū)動(dòng)程序。
虛擬網(wǎng)絡(luò)接口和真實(shí)存在的網(wǎng)絡(luò)接口在使用上是一致的。
4.網(wǎng)絡(luò)接口的創(chuàng)建
硬件網(wǎng)卡的網(wǎng)絡(luò)接口由驅(qū)動(dòng)程序創(chuàng)建。而虛擬的網(wǎng)絡(luò)接口由系統(tǒng)創(chuàng)建或通過(guò)應(yīng)用層程序創(chuàng)建。
驅(qū)動(dòng)中創(chuàng)建網(wǎng)絡(luò)接口的函數(shù)是:register_netdev(struct net_device *)或者register_netdevice(struct net_device *)。
這兩個(gè)函數(shù)的區(qū)別是:register_netdev(…)會(huì)自動(dòng)生成以”eth”作為打頭名稱的接口,而register_netdevice(…)需要提前指定接口名稱.事實(shí)上,register_netdev(…)也是通過(guò)調(diào)用register_netdevice(…)實(shí)現(xiàn)的。
到此,相信大家對(duì)“l(fā)inux中的lo有什么作用”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!