Linux網路管理

Java3y發表於2018-06-13

前言

只有光頭才能變強

回顧前面:

這篇主要講解在Linux下網路的管理

那麼接下來就開始吧,如果文章有錯誤的地方請大家多多包涵,不吝在評論區指正哦~

宣告:基於Centos6.9

一、Linux下的網路

Linux支援各種協議型別的網路

  • TCP/IP、NetBIOS/NetBEUI、IPX/SPX、AppleTake等
  • 在網路底層也支援Ethernet、Token Ring、ATM、PPP(PPPoE)、FDDI、Frame Relay等網路協議。
  • 這些網路協議是Linux核心提供的功能,具體的支援情況由核心編譯引數決定。

Linux網路管理

配置網路引數有兩種方式:

  • 臨時性網路配置
    • 通過命令修改當前核心中的網路相關引數實現,配置後立即生效,重新開機後失效
  • 永久性網路配置
    • 通過直接修改網路相關的配置檔案實現,需要重啟服務,重新開機後保留所有配置

在Linux下配置網路,總會遇到橋接和NAT模式的概念的,這裡我簡要摘抄一下:

  • 橋接模式的虛擬機器,就像一個在路由器"民政局"那裡"上過戶口"的成年人,有自己單獨的居住地址,雖然和主機住在同一個大院裡,但好歹是有戶口的人,可以大搖大擺地直接和外面通訊。
  • NAT模式的虛擬機器,純粹就是一個沒上過戶口的黑戶,路由器"民政局"根本不知道有這麼個人,自然也不會主動和它通訊。即使虛擬機器偶爾要向外面傳送點的信件,都得交給主機以主機的名義轉發出去,主機還專門請了一位叫做NAT的老大爺來專門負責這些虛擬機器的發信、收信事宜。
  • 僅主機模式的虛擬機器,純粹是一個徹徹底底的黑奴,不僅沒有戶口、路由器"民政局"不知道這麼號人,還被主機關在小黑屋裡,連信件也不準往外發。

參考資料:

1.1常用的管理網路命令

網路介面相關

  • 檢視網路介面配置:ifconfig [ethX]
  • 網路介面的啟用與停用:使用 ifup ethX 命令來啟用指定的介面,使用 ifdown ethX 命令來禁用指定的介面

臨時配置相關

  • ifconfig命令可以臨時地設定網路介面的IP引數
  • route命令可以臨時地設定核心路由表
  • 使用hostname命令可以臨時地修改主機名
  • 使用sysctl命令可以臨時地開啟核心的包轉發

使用命令來做網路的臨時配置,要做到永久配置就需要直接修改檔案的方式了!

Linux網路管理

網路檢測的常用工具:

  • ifconfig 檢測網路介面配置
  • route 檢測路由配置
  • ping 檢測網路連通性
  • netstat 檢視網路狀態
  • lsof 檢視指定IP 和/或 埠的程式的當前執行情況
  • host/dig/nslookup 檢測DNS解析
  • traceroute 檢測到目的主機所經過的路由器
  • tcpdump 顯示本機網路流量的狀態

1.1配置Linux網路練習題

檢查windows的virtualbox虛擬網路卡是否禁用,如果禁用,請啟動;以root賬戶登入,用ifconfig檢查當前網路配置;然後分別用ifup命令啟動eth0網路卡和eth1網路卡,觀察結果,並記錄網路卡繫結的ip地址,在第五部分記錄。關閉檢查防火牆的狀態,如果防火牆已啟動,請關閉linux系統的防火牆,

Linux網路管理

Linux網路管理

Linux網路管理

Linux網路管理

Linux網路管理

啟動putty,在Host Name輸入框中輸入eth1網路卡當前的ip地址,connection type 選擇SSH,Port為22;按“open”按鈕,提示Putty Security Alert對話方塊,選擇確定;分別以root賬戶,jkXX賬戶登入

Linux網路管理

Linux網路管理

Linux網路管理

在root賬戶登入的putty終端上檢視(ps au)當前使用者執行的程式,找到jk08賬戶執行的shell程式的pid,並且在第五部分記錄。在root賬戶登入的putty終端上,用kill命令殺死剛才記錄的shell程式;

Linux網路管理

Linux網路管理

Linux網路管理

殺死一個程式需要什麼條件?如果是peter賬戶,是否可以殺死jason賬戶執行的程式?

答:殺死一個程式,應獲得這個程式控制的權利,比如獲得程式所屬賬戶的許可權;或者獲得超級賬戶的許可權。如果是peter賬戶,沒有獲得jason賬戶的許可權,因此,殺死jason賬戶下執行的程式是被禁止的。

用路由命令檢視當前網路路由狀況,並用ping命令測試外部網站地址是否可以連通;並截圖

Linux網路管理

Linux網路管理

Linux網路管理

用ifconfig檢視eth0的當前ip地址;修改ip地址,地址的最後一段數字比原來的大1,檢視是否成功;用ifconfig修改eth0的地址,要求指定掩碼和廣播地址,其中掩碼為B類地址掩碼;用路由命令觀察路由表的變化;

Linux網路管理

Linux網路管理

Linux網路管理

在eth1網路卡上新增一個主機路由,要求其主機ip地址為192.168.3.3;在eth0網路卡上新增一個網路路由,網路地址為10.20.0.0,掩碼是255.255.0.0;觀察路由表中的預設路由,根據步驟(2)觀察到的預設路由,恢復預設閘道器路由,並測試網路與外部網站的連通性;

Linux網路管理

Linux網路管理

Linux網路管理

Linux網路管理

Linux網路管理

給網路卡eth1設定別名eth1:0,ip地址比eth1的ip地址最後一段數字大1;從windows端,用ping命令測試eth1和eth1:0的連通性;停止eth1:0工作,觀察結果,並截圖

Linux網路管理

Linux網路管理

Linux網路管理

修該主機名稱為serverXX(XX為學生學號末兩位),退出shell重新登入;觀察核心引數net.ipv4.ip_forward的值,將其修改為1;

Linux網路管理

Linux網路管理

為什麼預設路由記錄不見了,可能的原因是?

答:修改了預設路由經過的網路卡eth0的ip地址,對原有路由影響較大,因此係統自動將預設路由刪除。

一個網路卡有多個IP地址有什麼好處?

答:好處是有利於在一個網路卡上繫結多個相同的網路服務,比如可以繫結多個網站。

編輯eth0和eth1的網路介面檔案,要求修改為啟動時自動啟動裝置;並且要求eth1的地址為192.168.56.121,網路字首為26;系統重啟,檢驗網路卡是否自動啟動,及其IP地址;

Linux網路管理

Linux網路管理

Linux網路管理

Linux網路管理

編輯本地域名解析配置檔案,要求新增10.0.2.2地址,對應的域名為gateXX(其中XX為學生學號的末兩位),存檔退出;執行ping命令,引數為gateXX,檢查通過域名是否可以連通對應的ip地址;

Linux網路管理

Linux網路管理

編輯檔案,使得系統支援ip包轉發;用sysctl -p命令讓修改結果生效;

Linux網路管理

Linux網路管理

Linux網路管理

用ping命令測試網站www.qq.com,要求只傳送10次ICMP測試包;用netstat命令觀察網路介面資訊;用netstat命令觀察路由表資訊;用netstat命令觀察正在監聽的tcp埠;用netstat命令觀察正在監聽的udp埠;

Linux網路管理

Linux網路管理

Linux網路管理

Linux網路管理

Linux網路管理

sysctl -p看到的是配置檔案中的資料,還是記憶體中的資料?

答:看到的既是配置檔案中的資料,也是記憶體中的資料。因為-p引數的意思是把配置檔案中的資料更新到記憶體中。

二、安裝軟體

一般我們的Centos下安裝軟體可以直接使用yum命令來安裝,非常方便。在yum之前還有一個RPM,來看看它的區別:

  • rpm是由紅帽公司開發的軟體包管理方式,使用rpm我們可以方便的進行軟體的安裝、查詢、解除安裝、升級等工作。但是rpm軟體包之間的依賴性問題往往會很繁瑣,尤其是軟體由多個rpm包組成時。
  • Yum(全稱為 Yellow dog Updater, Modified)是一個在Fedora和RedHat以及SUSE中的Shell前端軟體包管理器。基於RPM包管理,能夠從指定的伺服器自動下載RPM包並且安裝,可以自動處理依賴性關係,並且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝。

2.1yum使用


yum  [全域性引數] 命令 [命令引數]
複製程式碼

Linux網路管理

常用的全域性引數:

  • -y:對yum命令的提問回答“是(yes)”
  • -C:只利用本地快取,不從遠端倉庫下載檔案
  • --enablerepo=REPO:臨時啟用指定的名為REPO的倉庫
  • --disablerepo=REPO:臨時禁用指定的名為REPO的倉庫
  • --installlroot=PATH:指定安裝軟體時的根目錄,主要用於為chroot環境安裝軟體

Linux網路管理

Linux網路管理

2.2幾種常用的網路工具

Linux網路管理

Linux網路管理

2.3練習yum安裝軟體與使用

用yum查詢軟體包tree,lsof,traceroute,觀察結果;查詢tree軟體包的基本資訊;安裝tree,lsof,traceroute三個軟體包

Linux網路管理

Linux網路管理

Linux網路管理

Linux網路管理

Linux網路管理

Linux網路管理

Linux網路管理

Linux網路管理

Linux網路管理

Linux網路管理

執行命令tree,檢視/etc目錄下的子目錄情況;執行lsof檢視使用網路tcp埠22的是哪個應用;用traceroute命令觀察某個網站經過了多少個路由

Linux網路管理

Linux網路管理

Linux網路管理

Linux網路管理

Linux網路管理

用瀏覽器開啟網站http://www.rpmfind.net,分別查詢軟體包system-config-network-tui, tree, ntsysv,找到軟體包,並複製下載連結;在linux中用wget下載連結,成功下載後,用長格式列出該檔案

Linux網路管理

Linux網路管理

Linux網路管理

Linux網路管理

Linux網路管理

Linux網路管理

Linux網路管理

Linux網路管理

用rpm工具檢視所有已經安裝的軟體包,並將結果輸出到檔案installXX.txt,其中(XX為學生學號末兩位);用rpm檢視bash的軟體包資訊;用rpm檢視安裝包檔案的數字簽名資訊;

Linux網路管理

Linux網路管理

Linux網路管理

使用rpm分別安裝第2步下載的三個軟體包;它們都能順利安裝嗎?為什麼會出錯;觀察結果,

Linux網路管理

Linux網路管理

Linux網路管理

Linux網路管理

哪個軟體包不能順利安裝,為什麼?應該怎樣安裝該軟體?

答:system-config-network-tui-1.6.0.el6.3-4.el6.noarch.rpm軟體包不能順利安裝,因為這個軟體包依賴其他軟體包,應把依賴的軟體包先安裝,才能安裝這個軟體包。可以yum工具安裝,它可以自動安裝依賴的軟體包。

四、總結

本文主要是總結了Linux下網路和安裝軟體的知識~~~這兩個知識點在Linux下也是很重要的,是學習Linux的基礎~

繼續完善上一次的思維導圖

Linux網路管理

如果文章有錯的地方歡迎指正,大家互相交流。習慣在微信看技術文章,想要獲取更多的Java資源的同學,可以關注微信公眾號:Java3y

文章的目錄導航

相關文章