8.網絡基礎知識

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

網橋:網橋就是把2個不同的網段橋接起來;可隔離沖突域。

集線器:集線器就是把多根以太網線或光纖集合連接在同一段物理介質下的裝置;工作在物理層;不能隔離沖突域。

二層交換機:工作于OSI模型的第2層(數據鏈路層),故而稱為二層交換機。二層交換技術的發展已經比較成熟,二層交換機屬數據鏈路層設備,可以識別數據包中的MAC地址信息,根據MAC地址進行轉發,并將這些MAC地址與對應的端口記錄在自己內部的一個地址表中。

三層交換機:三層交換機就是具有部分路由器功能的交換機,三層交換機的最重要目的是加快大型局域網內部的數據交換,所具有的路由功能也是為這目的服務的,能夠做到一次路由,多次轉發。對于數據包轉發等規律性的過程由硬件高速實現,而像路由信息更新、路由表維護、路由計算、路由確定等功能,由軟件實現。三層交換技術就是二層交換技術+三層轉發技術。傳統交換技術是在OSI網絡標準模型第二層——數據鏈路層進行操作的,而三層交換技術是在網絡模型中的第三層實現了數據包的高速轉發,既可實現網絡路由功能,又可根據不同網絡狀況做到最優網絡性能。

路由器:路由器(Router)又稱網關設備(Gateway)是用于連接多個邏輯上分開的網絡,所謂邏輯網絡是代表一個單獨的網絡或者一個子網。當數據從一個子網傳輸到另一個子網時,可通過路由器的路由功能來完成。因此,路由器具有判斷網絡地址和選擇IP路徑的功能,它能在多網絡互聯環境中,建立靈活的連接,可用完全不同的數據分組和介質訪問方法連接各種子網,路由器只接受源站或其他路由器的信息,屬網絡層的一種互聯設備。

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

A類: 1.0.0.1-126.255.255.254 (10.X.X.X/8是私網地址;127.0.0.1是本地回環地址)
網絡數:126
主機數:2^24-2
掩碼:255.0.0.0

B類: 128.0.0.1-191.255.255.254(172.16.X.X/16--172.31.X.X/16是私網地址;)
網絡數:2^14
主機數:2^16-2
掩碼:255.255.0.0

C類:192.168.0.1-223.255.255.254(192.168.X.X/24是私網地址;)
網絡數:2^21
主機數:2^8-2
掩碼:255.255.255.0

D類:224.0.0.1-239.255.255.254(一般用于做組播)

E類:240-255 (科學研究)

子網掩碼:子網掩碼(subnet mask)又叫網絡掩碼、地址掩碼、子網絡遮罩,它是一種用來指明一個IP地址的哪些位標識的是主機所在的子網,以及哪些位標識的是主機的位掩碼。子網掩碼不能單獨存在,它必須結合IP地 址一起使用。子網掩碼只有一個作用,就是將某個IP地址劃分成網絡地址和主機地址兩部分

    表示形式:
            1、
               32位二進制數字,每8位二進制數字換算成十進制,以"."分隔,形如:255.255.255.0
            2、
               IP地址后加上掩碼位數,形如:192.168.0.104/24
     
    作用:劃分子網
              將某個IP地址劃分成網絡地址和主機地址兩部分,與IP地址相與可計算出的相應IP的網絡位

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

網絡分層模型有:
    (1)OSI模型:應用層、表示層、會話層、傳輸層、網絡層、數據鏈路層、物理層
    物理層(Physical layer):利用物理傳輸介質為數據鏈路層提供物理連接,
    如:集線器、網線、光纖、同軸電纜等;在這一層,數據的單位稱為比特(bit)。物理層定義的典型規范代表包括:EIA/TIA RS-232、EIA/TIA RS-449、V.35、RJ-45等
    數據鏈路層(Data link layer):將數據分幀,并處理流控制,屏蔽物理層,
為網絡層提供一個數據鏈路的連接,進行幾乎無差錯的數據傳輸,如:網卡、網橋、二層交換機;
該層的作用包括:物理地址尋址、數據的成幀、流量控制、數據的檢錯、重發等。
在這一層,數據的單位稱為幀(frame)。數據鏈路層協議的代表包括:SDLC、HDLC、PPP、STP、
幀中繼等。
    網絡層(Network layer):負責路由轉發和控制網絡擁塞,如:路由器、三層交換機等; 
在這一層,數據的單位稱為數據包(packet)。網絡層協議的代表包括:IP、IPX、RIP、OSPF等。
    傳輸層(Transport layer):負責將上層數據分段并提供端到端的、可靠(TCP)
或不可靠(UDP)的數據傳輸;在這一層,數據的單位稱為數據段(segment)。
傳輸層協議的代表包括:TCP、UDP、SPX等。
    會話層(Session layer):負責兩個節點之間的連接和斷開;管理主機之間的會話進程,
即負責建立、管理、終止進程之間的會話。會話層還利用在數據中插入校驗點來實現數據的同步。
表示層(Presentation layer):負責加密和解密;表示層的數據轉換包括數據的加密、
壓縮、格式轉換等。
    應用層(Application layer):用于進程間通信,常用的協議有HTTP、FTP、SMTP、TELNET等 
    (2)TCP/IP模型:應用層、傳輸層、網絡層、網絡接入層
    網絡接入層:與OSI參考模型中的物理層和數據鏈路層相對應,負責監視數據在主機和網絡之
間的交換;
    網絡層:相當于OSI的網絡層,主要處理主機到主機間的通信;該層定義了分組格式和協議,
即IP協議(Internet Protocol)。除了需要完成路由的功能外,也可以完成將不同類型的網絡
(異構網)互連的任務,也需要完成擁塞控制的功能。
    傳輸層:對應于OSI參考模型的傳輸層,為應用層實體提供端到端的通信功能,保證了數據包的
順序傳送及數據的完整性,該層定義了兩種服務質量不同的協議:傳輸控制協議TCP(transmission
 control protocol)和用戶數據報協議UDP(user datagram protocol)。
    應用層:對應于OSI參考模型的會話層、表示層和應用層,面向不同的網絡應用引入了不同的
    應用層協議,如:FTP、HTTP等

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

(1)通過“有線”或“無線”接入互聯網絡;
    (2)配置網卡信息(具體配置信息查看第5題);
    (3)重新啟動網絡服務;

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

一、編輯網卡配置文檔設置:
(1)編輯 /etc/sysconfig/network-network-scripts/ifcfg-eXXX;可設置DHCP或靜態,也可在此文檔設置DNS
        如:DEVICE=eth0
            HWADDR=00:0C:29:D2:C3:D4
            TYPE=Ethernet
            UUID=0a105f68-0664-4150-8130-bdc046c7f04e
            ONBOOT=yes
            NM_CONTROLLED=yes
            BOOTPROTO=static
            IPADDR=192.168.183.128
            NETMASK=255.255.255.0
            GATEWAY=192.168.183.2
            DNS1=114.114.114.114
            DNS2=8.8.8.8

    (2)重啟網絡服務
        service network restart (centos7使用:systemctl restart network.service)
        
二、通過圖形界面:
                   cenos6:setup 
                   centos7:system-config-network-tui
                   
三、通過ifconfig命令:
            ifconfig eth0 [up|down]      #開啟網卡
            ifconfig eth0 192.168.182.130/24        #配置ip地址和掩碼
            ifconfig eth0 192.168.183.130 netmask 255.255.255.0     #配置ip地址和掩碼(同上條一樣)

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

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

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

#!/bin/bash
net='172.16.250.'
for i in `seq 1 254`; do
        ping -c 1 -w 1 ${net}$i &> /dev/null        
        if [ $? -eq 0 ]; then
                echo -e "\033[32m"${net}$i is up."\033[0m"
                let uphosts++        
        else
                echo -e "\033[31m "${net}$i is down." \033[0m"
                let downhosts++        
        fi   
done
 echo -e "\033[32m"Up hosts: $uphosts."\033[0m"
 echo -e "\033[31m"Down hosts: $downhosts."\033[0m"

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

DEVICE=此配置文件應用到的設置(eth0)    
HWADDR=對應設備的MAC地址    
BOOTPROTO=激活此設備時使用的地址配置協議,常用的dhcp,static,none,bootp    
NM_CONTROLLED=NM是NetworkManager的簡寫:此網卡是否接受NM控制(CentOS6建議為no)    
ONBOOT=在系統引導時是否激活此設備    
TYPE=接口類型,常見有Ethernet,Bridge    
UUID=設備的唯一標示    
IPADDR=指明IP地址    
NETMASK=子網掩碼    
GATEWAY=默認網關    
DNS1=第1個DNS服務器指向    
DNS2:第2個DNS服務器指向

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

采用網卡別名形式,ifconfig interface{0..+} ip netmask , ip addr add ip/mask dev interface{0..+}
    如:ifconfig命令:
        # ifconfig eth0:0 192.168.0.11/24
        ip命令:
        # ip addr add 192.168.0.11/24 dev eth0
        # ip addr add 192.168.0.11/24 dev eth0 label 'eth0:0'

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

ifconfig設置網卡:ifconfig eth0 192.168.0.2/24     
  route設置路由:rout add –host 192.168.0.2 gw 172.16.1.1 dev eth0
  ip設置地址:ip addr add 192.168.0.2/24 dev eth0
  
  SS命令查看:
  [root@caicai ~]# ss -tunl
Netid  State      Recv-Q Send-Q                 Local Address:Port                   Peer Address:Port 
udp    UNCONN     0      0                                  *:68                                *:*     
udp    UNCONN     0      0                          127.0.0.1:717                               *:*     
udp    UNCONN     0      0                                  *:47958                             *:*     
udp    UNCONN     0      0                                  *:111                               *:* 

netstat命令:
[root@caicai ~]# netstat -tunl
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State      
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      
tcp        0      0 127.0.0.1:631               0.0.0.0:*                   LISTEN      
tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      
tcp        0      0 0.0.0.0:41945               0.0.0.0:*                   LISTEN      
tcp        0      0 0.0.0.0:111                 0.0.0.0:*                   LISTEN      
tcp        0      0 :::35732                    :::*                        LISTEN      
tcp        0      0 :::22                       :::*                        LISTEN

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

rpm -i 安裝指定rpm程序包
rpm -e 卸載指定程序
rpm –test 測試安裝
rpm –nodeps 忽略依賴關系
rpm –replacepkgs 重新安裝
rpm –nosignature:不檢查來源的合法性
rpm –upgrage 安裝有舊程序包,則升級,如果不存在舊版程序包,則安裝
rpm –freshen:安裝有舊程序包時,則升級,如果不存,則不執行升級操作
rpm -q{l | c } 顯示指定程序是否安裝\安裝生成的文件\配置文件
yum install 安裝指定程序
yum remove 卸載指定程序
yum update 升級指定程序 
yum groupinstall 安裝組程序包
yum groupupdate 升級組程序 
yum groupremove 卸載組程序
yum info 查看指定程序的信息

注意:  1.不要對內核做升級操作:linux支持多內核版本并存,因此,直接安裝新版本內核    
        2.如果原程序包的配置文件安裝后曾被修改,升級時,新版本提供的同一配置文件不會直接覆蓋老版本的配置文件,而把新版本的文件重命名(FILENAME.rpmnew)后保留

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

# mount -r -t iso9660 /dev/cdrom /media/cdrom    掛載光盤

# vim /etc/yum.repos.d/CentOS-Cdrom.repo     創建編輯yum倉庫
    [cdrom]             
    name=CentOS-Cdrom
    baseurl=file:///media/cdrom 
    enabled=1
    gpgcheck=0

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

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

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

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

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

#!/bin/bash
k=`ls /etc/rc.d/rc3.d/ | grep -i "^k"`
s=`ls /etc/rc.d/rc3.d/ | grep -i "^s"`
for i in `echo $k`; do
        echo "$i stop"
        let kfile++
done
for i in `echo $s`; do
        echo "$i start"
        let sfile++
done
echo "K file:$kfile"
echo "S file:$sfile"

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

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

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

#!/bin/bash
for i in $@; do
        id=`cat /etc/passwd | grep "^$i" | cut -d: -f3`        
        let idadd+=$id
done
echo "Enter username ID add:$idadd"

14、寫一個腳本

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

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

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

#!/bin/bash
for i in $*; do
        for e in `ls $i`; do
                if [ -d $i/$e ];then
                        let dir+=1
                elif [ -f $i/$e ]; then
                        let file+=1
                fi  
        done
  done
  echo "dir have:$dir"
  echo "textfile have:$file"

15、寫一個腳本

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

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

#!/bin/bash
declare -i usersid=`grep --color=auto "^$1" /etc/passwd |cut -d: -f3`
if [ ${usersid} -gt 500 ];then
    echo "the user $1 is common user!"
fi

16、寫一個腳本

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

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

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

#!/bin/bashfor i in {1..10}; do
        if id user$i &> /dev/null; then
                echo "have this only user."
        else
                useradd user$i &> /dev/null        
                echo "user$i" | passwd --stdin &> /dev/null        
                let user+=1
        fi  doneecho "add user:$user"

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

#!/bin/bash
      #
      declare -i i=20
      declare -i uphosts=0
      declare -i downhosts=0
      net='172.16.250'
      while [ $i -le 100 ]; do
          if ping -c 1 -w 1 $net.$i &> /dev/null; then
          echo "$net.$i is up."
          let uphosts++          else
          echo "$net.$i is down."
          let downhosts++          fi
          let i++      done
      echo "Up hosts: $uphosts."
      echo "Down hosts: $downhosts."

18、打印九九乘法表;

for ((i=1;i<=9;i++)); do
        for ((j=1;j<=$i;j++)); do
                echo -n -e "${i}x${j}=$[ $i*$j ]\t"
        done
        echo

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

(0)
N27_jiangyefanN27_jiangyefan
上一篇 2017-08-21
下一篇 2017-08-21

相關推薦

  • 計算機淺談及Linux簡談

    一、計算機淺談: 電子計算機(英語:computer),亦稱電腦,是一種利用電子學原理,根據一系列指令對數據進行處理的工具。 在現代,機械計算機的應用已經完全被電子計算機所替換,其所相關的技術研究叫計算機科學,而“計算機技術”指的是將計算機科學的成果應用于工程實踐所派生的諸多技術性和經驗性成果的總合?!坝嬎銠C技術”與“計算機科學”是兩個相關而又不同的概念,它…

    Linux干貨 2016-11-29
  • 網絡班N_27第三周作業

    1、   列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。 [root@localhost ~]# who |cut-d” ” -f1 | sort -u 2、   取出左后登錄到當前系統的用戶的相關信息。 [root@localhost ~]# id `l…

    2017-08-11
  • 馬哥教育網絡班20期+第2周課程練習

    1、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。 cp復制, mv剪切, rm移除 語法格式: cp復制  cp [OPTION]… [-T] SOURCE DEST  常用選項: -i:交互式 -r: 遞歸復制目錄及內部的所有內容 -a: 歸檔   演示: …

    Linux干貨 2016-07-12
  • KeepAlived高可用集群詳解及拓撲實驗搭建配置

    Linux Cluster:KeepAlive 1.集群類型:LB(負載均衡集群),HA(高可用集群),HP(高性能集群)     LB:均衡負載的實現LVS     HA:高可用的實現KeepAlived 2.RS:健康狀態檢測方式: (1)網絡層:icmp ping (2)傳…

    Linux干貨 2016-11-01
  • 二進制、八進制、十進制、十六進制之間的轉換

    二進制、八進制、十進制、十六進制之間的關系:   二進制:0,1 八進制:0,1,2,3,4,5,6,7, 十進制:0,1,2,3,4,5,6,7,8,9 十六進制:0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F   二進制與十進制之間的轉換: 十進制轉二進制:   二進制轉十進制:   二進制與八進制…

    2017-04-01
  • nfs和samba服務

    nfs:      nfs: Network File System                      #網絡文件系統      nis:Network Information Se…

    Linux干貨 2017-04-27
欧美性久久久久