在現如今,隨着IT互聯網科技飛速的發展和進步,比如目前Linux系統擁有強大的開發程序,還有許多可用於查看網絡設置和連接的命令。下面我們一起來看一下都有哪些常用命令吧。
ifquery命令
一個非常有用的命令是ifquery。這個命令應該會顯示一個網絡接口列表。但是,你可能只會看到類似這樣的內容-僅顯示迴環接口:
$ifquery--list
lo
如果是這種情況,那說明你的/etc/network/interfaces不包括除了迴環接口之外的網絡接口信息。在下面的例子中,假設你使用DHCP來分配地址,且如果你希望它更有用的話,你可以添加例子最後的兩行。
#interfaces(5)fileusedbyifup(8)andifdown(8)
autolo
ifaceloinetloopback
autoeth0
ifaceeth0inetdhcp
ifup和ifdown命令
可以使用相關的ifup和ifdown命令來打開網絡連接並根據需要將其關閉,只要該文件具有所需的描述性數據即可。請記住,“if”在這裏意思是接口interface,這與ifconfig命令中的一樣,而不是如果我只有一個大腦ifIonlyhadabrain中的“if”。
ifconfig命令
另外,ifconfig命令完全不讀取/etc/network/interfaces,但是仍然提供了網絡接口相當多的有用信息——配置數據以及可以告訴你每個接口有多忙的數據包計數。ifconfig命令也可用於關閉和重新啓動網絡接口(例如:ifconfigeth0down)。
$ifconfigeth0
eth0Linkencap:EthernetHWaddr00:1e:4f:c8:43:fc
inetaddr:192.168.0.6Bcast:192.168.0.255Mask:255.255.255.0
inet6addr:fe80::b44b:bdb6:2527:6ae9/64Scope:Link
UPBROADCASTRUNNINGMULTICASTMTU:1500Metric:1
RXpackets:60474errors:0dropped:0overruns:0frame:0
TXpackets:33463errors:0dropped:0overruns:0carrier:0
collisions:0txqueuelen:1000
RXbytes:43922053(43.9MB)TXbytes:4000460(4.0MB)
Interrupt:21Memory:fe9e0000-fea00000
輸出中的RX和TX數據包計數很低。此外,沒有報告錯誤或數據包衝突。或許可以用uptime命令確認此係統最近才重新啓動。
上面顯示的廣播(Bcast)和網絡掩碼(Mask)地址表明系統運行在C類等效網絡(默認)上,所以本地地址範圍從192.168.0.1到192.168.0.254。
netstat命令
netstat命令提供有關路由和網絡連接的信息。netstat-rn命令顯示系統的路由表。192.168.0.1是本地網關(Flags=UG)。
$netstat-rn
KernelIProutingtable
DestinationGatewayGenmaskFlagsMSSWindowirttIface
0.0.0.0192.168.0.10.0.0.0UG000eth0
169.254.0.00.0.0.0255.255.0.0U000eth0
192.168.0.00.0.0.0255.255.255.0U000eth0
上面輸出中的169.254.0.0條目僅在你正在使用或計劃使用本地鏈路通信時纔有必要。如果不是這樣的話,你可以在/etc/network/if-up.d/avahi-autoipd中註釋掉相關的行:
$tail-12/etc/network/if-up.d/avahi-autoipd
#if[-x/bin/ip];then
##routealreadypresent?
#iprouteshow|grep-q'^169.254.0.0/16[[:space:]]'&&exit0
#
#/bin/iprouteadd169.254.0.0/16dev$IFACEmetric1000scopelink
#elif[-x/sbin/route];then
##routealreadypresent?
#/sbin/route-n|egrep-q"^169.254.0.0[[:space:]]"&&exit0
#
#/sbin/routeadd-net169.254.0.0netmask255.255.0.0dev$IFACEmetric1000
#fi
netstat-a命令
netstat-a命令將顯示“所有”網絡連接。爲了將其限制爲顯示正在監聽和已建立的連接(通常更有用),請改用netstat-at命令。
$netstat-at
ActiveInternetconnections(serversandestablished)
ProtoRecv-QSend-QLocalAddressForeignAddressState
tcp00*:ssh*:*LISTEN
tcp00localhost:ipp*:*LISTEN
tcp00localhost:smtp*:*LISTEN
tcp0256192.168.0.6:ssh192.168.0.32:53550ESTABLISHED
tcp600[::]:http[::]:*LISTEN
tcp600[::]:ssh[::]:*LISTEN
tcp600ip6-localhost:ipp[::]:*LISTEN
tcp600ip6-localhost:smtp[::]:*LISTEN
host命令
host命令就像nslookup一樣,用來查詢遠程系統的IP地址,但是還提供系統的郵箱處理地址。
$hostworld.std.com
world.std.comhasaddress192.74.137.5
world.std.commailishandledby10smtp.theworld.com.
nslookup命令
nslookup還提供系統中(本例中是本地系統)提供DNS查詢服務的信息。
$nslookupworld.std.com
Server:127.0.1.1
Address:127.0.1.1#53
Non-authoritativeanswer:
Name:world.std.com
Address:192.74.137.5
dig命令
dig命令提供了很多有關連接到遠程系統的信息-包括與我們通信的名稱服務器以及查詢需要多長時間進行響應,並經常用於故障排除。
$digworld.std.com
;<<>>DiG9.10.3-P4-Ubuntu<<>>world.std.com
;;globaloptions:+cmd
;;Gotanswer:
;;->>HEADER<<-opcode:QUERY,status:NOERROR,id:28679
;;flags:qrrdra;QUERY:1,ANSWER:1,AUTHORITY:0,ADDITIONAL:1
;;OPTPSEUDOSECTION:
;EDNS:version:0,flags:;udp:512
;;QUESTIONSECTION:
;world.std.com.INA
;;ANSWERSECTION:
world.std.com.78146INA192.74.137.5
;;Querytime:37msec
;;SERVER:127.0.1.1#53(127.0.1.1)
;;WHEN:MonOct0913:26:46EDT2017
;;MSGSIZErcvd:58
nmap命令
nmap經常用於探查遠程系統,但是同樣也用於報告本地系統提供的服務。在下面的輸出中,我們可以看到登錄可以使用ssh、smtp用於電子郵箱、web站點也是啓用的,並且ipp打印服務正在運行。
$nmaplocalhost
StartingNmap7.01(https://nmap.org)at2017-10-0915:01EDT
Nmapscanreportforlocalhost(127.0.0.1)
Hostisup(0.00016slatency).
Notshown:996closedports
PORTSTATESERVICE
22/tcpopenssh
25/tcpopensmtp
80/tcpopenhttp
631/tcpopenipp
Nmapdone:1IPaddress(1hostup)scannedin0.09seconds
Linux系統提供了很多有用的命令用於查看網絡配置和連接。如果你都探索完了,請記住aproposnetwork或許會讓你瞭解更多,最後想要學好雲計算Linux的朋友一定要選擇專業的靠譜的雲計算Linux培訓機構,因此扣丁學堂雲計算Linux是你最佳的選擇,扣丁學堂不僅有專業的老師和與時俱進的課程體系,還有大量的雲計算Linux視頻教程供學員觀看學習,想要雲計算Linux視頻教程的小夥伴抓緊時間行動吧。扣丁學堂Linux技術交流羣:422345477。