馬哥教育網絡第21期-第八周課程練習

1、請描述網橋、集線器、二層交換機、三層交換機、路由器的功能、使用場景與區別。

  網橋從一個局域網接收MAC幀,拆封、校對、校驗之后,按另一個局域網的格式重新組裝,發往它的物理層。由于網橋是鏈路層設備,因此不處理數據鏈路層以上層次協議所加的報頭。

  集線器的主要功能是對接收到的信號進行再生整形放大,以擴大網絡的傳輸距離,同時把所有節點集中在以它為中心的節點上。它工作于OSI(開放系統互聯參考模型)參考模型第一層。

 二層交換機指的就是傳統的工作在OSI參考模型的第二層–數據鏈路層上交換機,主要應用于小型的局域網中,主要功能包括物理編址、錯誤校驗、幀序列以及流控。

 三層交換機主是二層交換機與路由器的合體,支持物理層,數據鏈路層及網絡層協議。三層交換機支持路由功能、支持網絡層的很多協議等,支持多VLAN的設置與IP地址配置!支持安全功能等

 路由器是連接因特網中各局域網、廣域網的設備,路由和交換機之間的主要區別就是交換機發生在OSI參考模型第二層(數據鏈路層),而路由發生在第三層,即網絡層。

2、IP地址的分類有哪些?子網掩碼的表示形式及其作用

A類:
0 000 0000 - 0 111 1111: 1-127
網絡數:126, 127
每個網絡中的主機數:2^24-2
默認子網掩碼:255.0.0.0
私網地址:10.0.0.0/8

B類:
10 00 0000 - 10 11 1111:128-191
網絡數:2^14
每個網絡中的主機數:2^16-2
默認子網掩碼:255.255.0.0
私網地址:172.16.0.0/16-172.31.0.0/16

C類:
110 0 0000 - 110 1 1111: 192-223
網絡數:2^21
每個網絡中的主機數:2^8-2
默認子網掩碼:255.255.255.0
私網地址:192.168.0.0/24-192.168.255.0/24

D類:組播
1110 0000 - 1110 1111: 224-239

E類:
240-255

3、計算機網絡的分成模型有哪些(OSI模型和TCP/IP模型),每一層的功能及涉及到的物理設備有哪些。

   OSI參考模型

   物理層的主要功能是:利用傳輸介質為數據鏈路層提供物理連接,實現比特流的透明傳輸。物理層的作用是實現相鄰計算機節點之間比特流的透明傳送,該層會使用到網線,光纖等等。

   數據鏈路層OSI模型的第二層,負責建立和管理節點間的鏈路。該層的主要功能是:通過各種控制協議,將有差錯的物理信道變為無差錯的、能可靠傳輸數據幀的數據鏈路。這一層的主要功能是在物理層提供的比特流的基礎上,通過差錯控制、流量控制方法,使有差錯的物理線路變為無差錯的數據鏈路,即提供可靠的通過物理介質傳輸數據的方法。工作在該層的設備一般為交換機,集線器等等。

  網絡層OSI模型的第三層,它是OSI參考模型中最復雜的一層,也是通信子網的最高一層。它在下兩層的基礎上向資源子網提供服務。其主要任務是:通過路由選擇算法,為報文或分組通過通信子網選擇最適當的路徑。該層控制數據鏈路層與傳輸層之間的信息轉發,建立、維持和終止網絡的連接。

  傳輸層OSI模型的第4層。因此該層是通信子網和資源子網的接口和橋梁,起到承上啟下的作用。該層的主要任務是:向用戶提供可靠的端到端的差錯和流量控制,保證報文的正確傳輸。傳輸層的作用是向高層屏蔽下層數據通信的細節,即向用戶透明地傳送報文。

  會話層OSI模型的第5層,是用戶應用程序和網絡之間的接口,主要任務是:向兩個實體的表示層提供建立和使用連接的方法。將不同實體之間的表示層的連接稱為會話。因此會話層的任務就是組織和協調兩個會話進程之間的通信,并對數據交換進行管理。

  表示層是OSI模型的第六層,它對來自應用層的命令和數據進行解釋,對各種語法賦予相應的含義,并按照一定的格式傳送給會話層。其主要功能是“處理用戶信息的表示問題,如編碼、數據格式轉換和加密解密”等。

  應用層(Application Layer)是OSI參考模型的最高層,它是計算機用戶,以及各種應用程序和網絡之間的接口,其功能是直接向用戶提供服務,完成用戶希望在網絡上完成的各種工作。它在其他6層工作的基礎上,負責完成網絡中應用程序與網絡操作系統之間的聯系,建立與結束使用者之間的聯系,并完成網絡用戶提出的各種網絡服務及應用所需的監督、管理和服務等各種協議。此外,該層還負責協調各個應用程序間的工作。

    TCP/IP參考模型

  網絡接口層包括用于協作IP數據在已有網絡介質上傳輸的協議。它定義像地址解析協議這樣的協議,提供TCP/IP協議的數據結構和實際物理硬件之間的接口。 

  網絡層對應于OSI七層參考模型的網絡層。本層包含IP協議、RIP協議,負責數據的包裝、尋址和路由。同時還包含網間控制報文協議用來提供網絡診斷信息。

傳輸層對應于OSI七層參考模型的傳輸層,它提供兩種端到端的通信服務。其中TCP協議提供可靠的數據流運輸服務,UDP協議提供不可靠的用戶數據報服務。

應用層對應于OSI七層參考模型的應用層和表達層。因特網的應用層協議包括Finger、Whois、FTP(文件傳輸協議)、Gopher、HTTP(超文本傳輸協議)、Telent(遠程終端協議)、SMTP(簡單郵件傳送協議)、IRC(因特網中繼會話)、NNTP(網絡新聞傳輸協議)等。


4、如何將Linux主機接入到TCP/IP網絡,請描述詳細的步驟。(手動指定的方式)

[root@6 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0 
  1 DEVICE=eth0
  2 HWADDR=00:0C:29:88:B2:2C
  3 TYPE=Ethernet
  4 UUID=05cb76db-70e8-49f6-9b1d-f754c47a28f6
  5 ONBOOT=yes
  6 IPADDR=192.168.1.118
  7 NETMASK=255.255.255.0
  8 GATEWAY=192.168.1.1
~
[root@6 ~]# service network restart
正在關閉接口 eth0:                                        [確定]
關閉環回接口:                                             [確定]
彈出環回接口:                                             [確定]
彈出界面 eth0: Determining if ip address 192.168.1.118 is already in use for device eth0...
                                                           [確定]

5、為Linux主機配置網絡信息的方式有哪些,請描述各個過程。

  1. 編輯配置文件修改網絡參數,永久生效

  2. 使用ifconfig命令來指定,重啟失效

6、寫一個腳本,使用ping命令探測172.16.250.1-172.16.250.254之間的所有主機的在線狀態;

     在線的主機使用綠色顯示;

     不在線的主使用紅色顯示;

#!/bin/bash
for((i=1;i<254;i++))
do
	ping -c 1 172.168.250.$i &>/dev/null
	if [ $? -eq 0 ];then
		echo -e "\033[32m 172.168.250.$i is up \022[0m"
	else
		echo -e "\033[31m 172.168.250.$i is down \022[0m"

	fi
done

7、詳細描述每個網絡接口的配置文件中各個參數的含義和其所對應的值;

  1 DEVICE=eth0    //設備名稱
  2 HWADDR=00:0C:29:88:B2:2C    //mac地址
  3 TYPE=Ethernet    //網絡接口類型
  4 UUID=05cb76db-70e8-49f6-9b1d-f754c47a28f6
  5 ONBOOT=yes    //是否開機啟動
  6 IPADDR=192.168.1.118    //ip地址
  7 NETMASK=255.255.255.0    //子網掩碼
  8 GATEWAY=192.168.1.1    //網關

8、如何給網絡接口配置多個地址,有哪些方式?

1.ip addr add 
2.編輯配置文件,重啟生效
3.setup

9、常用的網絡管理類工具有哪些,并用示例形式描述他們的使用方法。

netstat命令:
-t: tcp協議相關。-u: udp協議相關。-w: raw socket相關。-l: 處于監聽狀態。-a: 所有狀態。-n: 以數字顯示IP和端口。-e:擴展格式
-p: 顯示相關進程及PID。
ss命令

10、Linux系統軟件包管理方法(安裝、升級、卸載等操作)有哪些,以及如何管理的。

    rpm
    安裝:
        rpm {-i|--install} [install-options] PACKAGE_FILE ...
            -v: verbose
            -vv: 
            -h: 以#顯示程序包管理執行進度;每個#表示2%的進度
            rpm -ivh PACKAGE_FILE ...   
      升級:      
            upgrage:安裝有舊版程序包,則“升級”;如果不存在舊版程序包,則“安裝”;
            freeshen:安裝有舊版程序包,則“升級”;如果不存在舊版程序包,則不執行升級操作;
            rpm -Uvh PACKAGE_FILE ...
            rpm -Fvh PACKAGE_FILE ... 
      查詢:
        rpm {-q|--query} [select-options] [query-options]

        [select-options]
            -a: 所有包
            -f: 查看指定的文件由哪個程序包安裝生成
      卸載:
        rpm {-e|--erase} [--allmatches] [--nodeps] [--noscripts]
    yum
     顯示倉庫列表:
      yum repolist [all|enabled|disabled]

    顯示程序包:
        list
            # yum list [all | glob_exp1] [glob_exp2] [...]
            # yum list {available|installed|updates} [glob_exp1] [...]

    安裝程序包:
       yum install package1 [package2] [...]

       yum reinstall package1 [package2] [...]  (重新安裝)

    升級程序包:
       yum update [package1] [package2] [...]

       yum downgrade package1 [package2] [...] (降級)

    檢查可用升級:
       yum check-update

    卸載程序包:
       yum remove | erase package1 [package2] [...]

    查看程序包information:
       yum info [...]

11、如何使用發行版光盤作為yum repository,請描述該過程。

1.將光盤掛載到指定的目錄
[root@6 ~]# mount /dev/cdrom /mnt    
2.創建配置文件
[root@6 mnt]# cat /etc/yum.repos.d/cdrom.repo 
	[cdrom]
name=cdrom
basurl=file:///mnt
enable=1
gpgcheck=0

12、寫一個腳本,完成以下功能

   (1) 假設某目錄(/etc/rc.d/rc3.d/)下分別有K開頭的文件和S開頭的文件若干;

   (2) 顯示所有以K開頭的文件的文件名,并且給其附加一個stop字符串;

   (3) 顯示所有以S開頭的文件的文件名,并且給其附加一個start字符串;

   (4) 分別統計S開頭和K開頭的文件各有多少;

#!/bin/bash
cd /etc/rc.d/rc3.d
for i in $(ls K*);do
	echo "$i start"
	let i++
done

for j in $(ls S*);do
	echo "$j stop"
	let j++
done

echo "$i,$j"

13、寫一個腳本,完成以下功能

   (1) 腳本能接受用戶名作為參數;

   (2) 計算此些用戶的ID之和;

  1 #!/bin/bash
  2 declare -i j=0
  3 
  4 for i in $*;do
  5     userid=$( id -u ${i} ) 
  6     j+=$userid
  7     let i++
  8 done
  9

14、寫一個腳本

   (1) 傳遞一些目錄給此腳本;

   (2) 逐個顯示每個目錄的所有一級文件或子目錄的內容類型;

   (3) 統計一共有多少個目錄;且一共顯示了多少個文件的內容類型;

#!/bin/bash

declare -i f=0
declare -i d=0
declare -i c=0
declare -i s=0
declare -i b=0
declare -i o=0

read -p "input file path " file
for i in 'ls $file';do
	if [ -d $file ];then
		echo "$file is directory"
		let d++
	elif [ -f $file ];then
		echo "$file is file"
		let f++
	elif [ -s $file ];then
		echo "$file is socket"
		let s++
	elif [ -b $file ];then
		echo "$file is bolck"
		let b++
	elif [-c $file ];then
		echo "$file is char"
		let c++	
	else
		let o++	
	fi	
done
echo "directory $d"
echo "file $f"
echo "socket $s"
echo "block $b"
echo "char $c"
echo "other $c"

15、寫一個腳本

  通過命令行傳遞一個參數給腳本,參數為用戶名

  如果用戶的id號大于等于500,則顯示此用戶為普通用戶;

  1 #!/bin/bash
  2 if [ $# -eq 0 ];then
  3     echo "plesae input username"
  4 fi
  5 let a=$(id -u $1)
  6 if [ $a -ge 500 ];then
  7     echo "this is user"
  8 else
  9      echo "this is system user"
 10 fi

16、寫一個腳本

   (1) 添加10用戶user1-user10;密碼同用戶名;

   (2) 用戶不存在時才添加;存在時則跳過;

   (3) 最后顯示本次共添加了多少用戶;

  1 #!/bin/bash
  2 declare -i i=0
  3 for((i=1;i<11;i++))do
  4     if id user$i &> /dev/null;then
  5         echo "user$i is exist"
  6         continue
  7     else
  8         useradd user$i
  9         echo "user$i" | passwd --stdin$i &> /dev/null
 10         let i++
 11     fi
 12 done
 13 echo "add $i user"

17、寫一腳本,用ping命令測試172.16.250.20-172.16.250.100以內有哪些主機在線,將在線的顯示出來;

#!/bin/bash
for((i=20;i<100;i++))
do
	ping -c 1 172.168.250.$i &>/dev/null
	if [ $? -eq 0 ];then
		echo  "172.168.250.$i is up "

	fi
done

18、打印九九乘法表;

  1 #!/bin/bash
  2 for((i=1;i<10;i++))
  3 do
  4     for((j=1;j<=$i;j++))
  5     do
  6         echo -e -n "$j*$i= $(($i*$j))\t"
  7     done
  8     echo
  9 done

以上

原創文章,作者:N21_619463772,如若轉載,請注明出處:http://www.www58058.com/35247

(0)
N21_619463772N21_619463772
上一篇 2016-10-24 09:09
下一篇 2016-10-24 09:11

相關推薦

  • 馬哥教育網絡班22期+第13周課程練習

    1、建立samba共享,共享目錄為/data,要求:(描述完整的過程)   1)共享名為shared,工作組為magedu;   2)添加組develop,添加用戶gentoo,centos和ubuntu,其中gentoo和centos以develop為附加組,ubuntu不屬于develop組;密碼均為用戶名; &n…

    Linux干貨 2016-12-05
  • 馬哥教育網絡班21期+第8周課程練習

    1、請描述網橋、集線器、二層交換機、三層交換機、路由器的功能、使用場景與區別。 網橋:橋接器,是連接兩個局域網的一種存儲/轉發設備,它能將一個大的LAN分割為多個網段,或將兩個以上的LAN互聯為一個邏輯LAN,使LAN上的所有用戶都可訪問服務器 集線器:集線器的英文稱為“Hub”.集線器(hub)屬于純硬件網絡底層設備,基本上不具有類似于交換機的"…

    Linux干貨 2016-08-29
  • Linux的獲取系統的幫助信息及man文檔說明

    Linux的獲取系統的幫助信息及man文檔說明 幫助命令有內部命令幫助和外部命令幫助兩種 內部命令獲得幫助使用下面命令 # help COMMAND 例如: [root@localhost ~]# type type type is a shell builtin [root@localhost ~]# help type type: type [-afpt…

    2018-02-28
  • RHCE系列之ntp服務器—-實踐篇

    原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。http://nolinux.blog.51cto.com/4824967/1319520 上篇Linux實戰部署系列之ntp服務器—-理論篇為大家介紹時間的相關概念和ntp的原理,本篇博文將帶大家一起部署生產環境中實現簡單…

    Linux干貨 2016-08-15
  • 根DNS域名解析的實現

    一、實現從根,com,rj.com 模擬互聯網的DNS架構 DNS(Domain Name System,域名系統),因特網上作為域名和IP地址相互映射的一個分布式數據庫,能夠使用戶更方便的訪問互聯網,而不用去記住能夠被機器直接讀取的IP數串。 接下來就一起開始搭建吧 首先,我們需要計劃好實驗環境,包括實驗的步驟思路 1)實驗環境(最好是畫圖展示,能使思路清…

    2015-02-10
  • Linux文件壓縮、解壓、歸檔總結

    一、簡介   壓縮對我們來說通常意味著減小文件體積,節省硬盤空間。在Windows平臺上處理大文件或目錄中的文件很多時我們都需要對這些文件進行壓縮處理,壓縮格式多種多樣,如:zip、rar、7z等格式,壓縮方式也比較多樣話,支持按最大壓縮比例或者最快時間進行壓縮等多種方式,而生成的壓縮包就可以讓我們更方便的進行拷貝及歸檔整理。解壓縮顧名思義就是回歸…

    Linux干貨 2015-09-26

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-10-25 12:43

    網絡部分可以更詳細一些,還有下次ctrl+c,ctrl+v的時候,請調整好統一的格式

欧美性久久久久