N21 第八周 總有刁民想害朕

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

網橋將兩個相似的網絡連接起來,并對網絡數據的流通進行管理。它工作于數據鏈路層,不但能擴展網絡的距離或范圍,而且可提高網絡的性能、可靠性和安全性。

集線器的英文稱為“Hub”。主要功能是對接收到的信號進行再生整形放大,以擴大網絡的傳輸距離,同時把所有節點集中在以它為中心的節點上。它工作于OSI參考模型第一層,即“物理層”。

二層交換機工作于OSI模塊的第2層(數據鏈路層),故稱為二層交換機。可以識別數據包中的MAC地址信息,根據MAC地址進行轉發,并將這些MAC地址與對應的端口記錄在自己內部的一個地址表中。

三層交換機就是具有路由功能的交換機。

路由器工作于OSI參考模型的第3層(網絡層),是連接因特網中各局域網、廣域網的設備,它根據信道的情況自動選擇和設定路由,以最佳路徑,按前后順發送信號

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

A類:1-127默認子網掩碼:255.0.0.0 10.0.0.0/8

B 類:128-191默認子網掩碼:255.255.0.0 172.16.0.0/16-172.31.0.0/16

C 類:192-223默認子網掩碼:255.255.255.0 192.168.0.0/24-192.168.255.0/24

D 類:223-254

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

OSI七層模型:

應用層:提供應用程序之間通信,

表示層:處理數據格式、數據加密

會話層:建立,維護,管理會話連接涉及操作系統和網絡接口和各種數據

傳輸層:建立主機端到端連接,涉及物理設備

網絡層:尋址和路由選擇涉及物理設備,路由器

數據鏈路層:提供介質訪問,鏈路管理,將數據分幀并處理流控制。網卡,網橋,交換機

物理層:比特流傳輸,將數據轉換為可通過物理介質傳送的電子信號物理設備雙絞線、同軸電纜,集線器

TCP/IP 4層模型:

網絡訪問層:功能包括IP地址與物理硬件地址的映射,以及將IP分組封裝成幀。基于不同硬件類型的網絡接口,定義了和物理介質的連接。相當于OSI參考模型的物理層和數據鏈路層。

網際層:處理來自傳輸層的分組發送請求;處理輸入數據報;處理ICMP報文,即處理網絡的路由選擇、流量控制和擁塞控制等問題。在功能上類似于ISO/OSI參考模型中的網絡層。

傳輸層:主要功能是可靠而又準確地傳輸并控制源主機與目的主機之間的信息流,提供端到端的控制,通過滑動窗口機制提供流控制,通過序列號和確認機制來保證可靠性。

應用層:包括所有的高層協議,與OSI的應用層協議相差不大,包括HTTP、Telnet、FTP、SMTP、POP3、DNS等。

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

1)使用ip -a命令查看是否有發現網卡

2)編輯/etc/sysconfig/network-script/ifcfg-ethX centos 為eno17736,配置啟動必要的參數,如:

BOOTPROTO=none

ONBOOT=yes

IPADDR=########

NETMASK=########

GATEWAY=########

DNS1=########

3)service network restart

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

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

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

#!/bin/bashfor ((i=1;i<255;i++));do
        ping -c 1 -w 1 "172.16.250.$i" >/dev/null
        if [ $? -eq 0 ];then
                echo -e "\033[0;32;1m 192.168.1.$i is up! \033[0m"
        else
                echo -e "\033[0;31;1m 192.168.1.$i is down! \033[0m" 
        fi
done

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

cat /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0 #設備名稱,一般和NAME相同

TYPE=Ethernet #網絡類型

ONBOOT=yes #系統啟動時啟用連接

NM_CONTROLLED=yes #接受network manager服務控制

BOOTPROTO=none #獲得IP地址方式,手動選擇none,自動選擇dhcp

IPADDR=192.168.199.61 #設定IP地址

PREFIX=24 #掩碼位數,也可使用NETMASK=255.255.255.0

GATEWAY=192.168.199.254 #網關

DNS1=192.168.199.1 #DNS

DEFROUTE=yes #是否作為默認路由

IPV4_FAILURE_FATAL=yes

IPV6INIT=no

NAME="System eth0"

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

1)使用ipaddr/ifconfig 命令添加IP,即時生效,重啟系統后IP不存在

2)使用setup命令,出現面板添加IP

3)在/etc/sysconfig/network-scripts目錄下修改網卡配置文件添加IP,需重啟網卡,永久有效

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

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

rpm命令實現程序管理:

安裝:-ivh, –nodeps, –replacepkgs

卸載:-e, –nodeps

升級:-Uvh, -Fvh, –nodeps, –oldpackage

查詢:-q, -qa, -qf, -qi, -qd, -qc, -q –scripts, -q –changlog, -q –provides, -q –requires

校驗:-V

導入GPG密鑰:–import, -K, –nodigest, –nosignature

數據庫重建:–initdb, –rebuilddb

Yum 命令實施軟件包管理:

repolist [all|enabled|disabled]

顯示程序包:list

#yum list [all | glob_exp1] [glob_exp2] […]

#yum list {available|installed|updates} [glob_exp1] […]

安裝程序包: install package1 [package2] […]

reinstall package1 [package2] […] (重新安裝)

升級程序包:

update [package1] [package2] […]

downgrade package1 [package2] […] (降級)

檢查可用升級:

check-update

卸載程序包:

remove | erase package1 [package2] […]

查看程序包information:

info […]

查看指定的特性(可以是某文件)是由哪個程序包所提供:

provides | whatprovides feature1 [feature2] […]

清理本地緩存:

clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]

構建緩存:

makecache

DNF 命令實施軟件包管理:

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

1)掛載光盤至某目錄

mount /dev/sr0 /mnt/

2)創建配置文件

vim /etc/yum.repos.d/cdrom.repo

[cdrom] #倉庫的名字

name=66666 #倉庫的描述

baseurl=file:///mnt #repodata目錄的倉庫訪問路徑

gpgchecked=0 #使用前是否檢驗包

enabled=1 #是否啟用此倉庫,默認啟用

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

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

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

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

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

#!/bin/bash
startsum=0,stopsum=0for i in $(ls /etc/rc.d/rc3.d/);do
        string=$(echo ${i:0:1})        if [ $string == K ];then
                echo "$i stop"
                let stopsum++
        elif [ $string == S ];then
                echo "$i start"
                let startsum++
        fi
done
echo "start S:$startsum"echo "start K:$stopsum

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

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

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

#!/bin/bash
sum=0if [ $# -lt 1 ];then
        echo "plz at least a username!"
        exit 20
        fifor i in $*;do
        if id $i &>/dev/null;then
        sum+=$(id -u $i)        else
        echo "the user $i is not exist!"
        exit 30
        fi
done
echo "sum gid:$sum"

14、寫一個腳本

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

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

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

[ -d $i -a -x $i ]檢查文件夾是否存在,且是否有權限讀取

ls -l $i |grep ^d 取出目錄

ls -l /tmp/ |grep -v ^d取出非目錄

#!/bin/bash
dsum=0,fsum=0if [ $# -le 1 ];then
        echo "input at least a filepath!"fifor i in $*;do
        if [ -d $i -a -x $i ];then
        ls -l $i  |grep ^d |awk '{print $NF}'
        let dsum+=$(ls -l /tmp/ |grep ^d |wc -l)        let fsum+=$(ls -l /tmp/ |grep -v ^d |wc -l)        else
        echo "The $i is not exist or Permission denied,please check it!"
        exit 2
        fi
done
        echo "the directories sum:$dsum"
        echo "the file sum:$fsum"

15、寫一個腳本

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

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

#!/bin/bashif [ $# -lt 1 ];then
echo "please input a username at least!"fifor username in $*;do
        if id $username &>/dev/null;then                if [ $(id -u $username) -gt 500 ];then
                        echo "$username is the regular user!"
                fi        else
                echo "$username is no exist!"
        fi
done

16、寫一個腳本

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

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

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

#!/bin/bash
sum=0for ((i=1;i<=10;i++));do
        if id user$i &> /dev/null;then
                echo "user$i is exists!"
        else
                useradd -M -N user$i &> /dev/null
                let sum++
                echo "user$i is add!"
        fi
done
        echo "$sum users add done!"

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

#!/bin/bashfor ((i=1;i<=20;i++));do
        ping -w 1 -c 1 172.16.250.$i &> /dev/null
        if [ $? -eq 0 ];then
                echo "172.16.250.$i is up!"
        fi
done

18、打印九九乘法表;

#!/bin/bashfor j in {1..9};do
        for i in $(seq 1 $j);do
                echo -e -n "${i}X${j}=$[$i*$j]\t"
        done
        echo
done

原創文章,作者:N21-總有刁民想害朕,如若轉載,請注明出處:http://www.www58058.com/46176

(0)
N21-總有刁民想害朕N21-總有刁民想害朕
上一篇 2016-09-15
下一篇 2016-09-15

相關推薦

  • 優云軟件數據專家最佳實踐:數據挖掘與運維分析

    這份研究報告,作者是優云軟件數據專家陳是維,在耗時1年時間制作的一份最佳實踐,今天和大家分享下,關于《數據采礦和運維分析》,共同探討~ 數據挖掘(Data Mining)是從大量數據中提取或“挖掘”知識。 廣義數據挖掘:數據挖掘是從存放在數據庫、數據倉庫或其它信息庫中的大量數據挖掘有趣知識的過程。 數據挖掘技術側重:1)概率與數理統計 2)數據庫技術 3)人…

    大數據運維 2016-07-16
  • shell編程中的三種流程控制

    流程控制 v 一 、過程式編程語言: 1.順序執行 2.選擇執行 3.循環執行  條件選擇if 語句   選擇執行:   注意: :if 語句可 嵌套    單分支 if 判斷條件;then 條件為真的分支代碼 fi    雙分支 if 判斷條件; then …

    Linux干貨 2016-08-21
  • sed使用小結

    sed使用小結 Stream EDitor  行編輯器       sed是一種流編輯器,它一次處理一行內容。處理時,把當前處理的行存儲在臨時緩沖區中,稱為“模式空間”( pattern space),接著用sed命令處理緩沖區中的內容,處理完成后,…

    Linux干貨 2016-08-12
  • Sed及Vim作業

      Sed及Vim作業題:     1、刪除/etc/grub2.conf文件中所有以空白開頭的行行首的空白字符    [root@localhost 7 ~]# sed -r  's/^[[:space:]]…

    Linux干貨 2016-08-09
  • linux 根文件系統層級FHS

    下面介紹認識一下FHS FHS: Filesystem Hierarchy  Standard /bin:所有用戶可用的基本命令程序文件; /sbin:供系統管理使用的工具程序; /boot:引導加載器必須用到的各靜態文件: kernel,   initramfs(initrd),  grub 等 dev:存儲特殊文件或設備文件…

    Linux干貨 2016-10-28
  • Linux 之LVM

    一 LVM 簡介:     LVM是 Logical Volume Manager(邏輯卷管理)的簡寫,LVM將一個或多個硬盤的分區在邏輯上集合,相當于一個大硬盤來使用,當硬盤的空間不夠使用的時候,可以繼續將其它的硬盤的分區加入其中,這樣可以實現磁盤空間的動態管理,相對于普通的磁盤分區有很大的靈活性。LVM的工作原理其…

    Linux干貨 2016-03-01

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-09-19 17:30

    腳本排版是不是特別不合理,在仔細看看,前面的內容最好也和腳本一樣的排版

欧美性久久久久