馬哥教育網絡班21期+第8周課程練習

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

  • 集線器(HUB)是在OSI模型的第一層——物理層——連接多臺主機、延長網絡的設備。其主要功能是將從一個端口接收到的數據包轉發給所有端口。中繼器(Repeater)是將由電纜傳過來的電信號或光信號調整波形和放大再傳給另一個電纜的設備,提供多端口服務的中繼器稱作集線器。二者的主要區別是HUB是在物理層轉發數據的,它并不關心電壓值的大小,也不會放大物理信號;而Repeater的作用就是放大物理信號。

  • 網橋(Bridge)是在OSI模型的第二層——數據鏈路層——連接兩個網絡的設備。它能夠識別數據鏈路層中的數據幀,并將這些數據幀臨時存儲于內存,再重新生成信號作為一個全新的幀轉發給相連的另一個網段。網橋能識別數據包中的MAC地址信息,根據MAC信息實現對數據包有目的的轉發,并將相關MAC地址信息與對應的端口記錄在內部的地址表中。

  • 路由器(Router)是在OSI模型的第三層——網絡層——連接兩個網絡、并對分組報文進行轉發的設備。網橋是根據MAC地址進行處理,而路由器則是根據IP地址進行處理的。路由器的主要作用就是為經過路由器的數據包選擇一條最佳傳輸途徑,并將數據包有效地送達目的地。

  • 二層交換機與三層交換機的區別:二層交換器工作于數據鏈路層,用于小型的局域網絡;三層交換機工作于網絡層,加快大型局域網絡內部的數據轉發。

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

子網掩碼的表示形式:
    192.168.100.100/255.255.255.0 <--> 192.168.100.100/24
子網掩碼的作用:
    區分網絡上的主機是否處于同一子網絡中。

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

OSI模型.png

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

編輯/etc/sysconfig/network-scripts/ifcfg-IFACE文件,指定IPADDR、NETMASK、GATEWAY和DNS;
編輯/etc/sysconfig/network-scripts/route-IFACE文件,指定網絡路由;

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

配置IP:編輯/etc/sysconfig/network-scripts/ifcfg-IFACE文件 配置路由:編輯/etc/sysconfig/network-scripts/route-IFACE文件 dns服務器指定:編輯/etc/resolv.conf文件

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

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

不在線的主使用紅色顯示; #!/bin/bash net='192.168.40' declare -i uphosts=0 declare -i downhosts=0

    for i in {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[om"
            let downhosts++
        fi
        done

        echo "Up hosts: $uphosts."
        echo "Down hosts: $downhosts."

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

/etc/sysconfig/network-scripts/ifcfg-IFACE:
DEVICE:此配置文件應用到的設備;
HWADDR:對應的設備的MAC地址;
BOOTPROTO:激活此設備時使用的地址配置協議,常用的dhcp, static, none, bootp;
NM_CONTROLLED:NM是NetworkManager的簡寫;此網卡是否接受NM控制;CentOS6建議為“no”;
ONBOOT:在系統引導時是否激活此設備;
TYPE:接口類型;常見有的Ethernet, Bridge;
UUID:設備的惟一標識;

IPADDR:指明IP地址;
NETMASK:子網掩碼;
GATEWAY: 默認網關;
DNS1:第一個DNS服務器指向;
DNS2:第二個DNS服務器指向;

USERCTL:普通用戶是否可控制此設備;
PEERDNS:如果BOOTPROTO的值為“dhcp”,是否允許dhcp server分配的dns服務器指向信息直接覆蓋至/etc/resolv.conf文件中;

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

ifconfig:
    ifconfig IFACE_ALIAS IPADDR
ip:
    ip addr add ip_addr/mask dev IFACE label alias_label
配置文件:
    ifcfg-IFACE_ALIAS
        DEVICE=IFACE_ALIAS

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

Linux網絡管理.png

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

Linux程序包管理.png

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

[root@CentOS6 ~]# mount /dev/cdrom /media/CentOS_6.4_Final/
mount: block device /dev/sr0 is write-protected, mounting read-only
[root@CentOS6 ~]# cd !$
cd /media/CentOS_6.4_Final/
[root@CentOS6 CentOS_6.4_Final]# rpm --import RPM-GPG-KEY-CentOS-6
[root@CentOS6 CentOS_6.4_Final]# vi /etc/yum.repos.d/yum.repo 

[localyum]
name=localyum
baseurl=file:///media/CentOS_6.4_Final
gpgcheck=1
enabled=1

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

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

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

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

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

#!/bin/bash
read -p "Please enter a directory:" dir
for i in `ls $dir | grep -o '^K.*'`; do
    echo "$i.stop"
    let a++
done
for j in `ls $dir | grep -o '^S.*'`; do
    echo "$j.start"
    let b++
done
echo "Line of begining with S:$b"
echo "Line of stopping with K:$a"

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

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

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

#!/bin/bash
read -p "Please enter some users:" user
[ -z "$user" ] && echo "At least one user!" && exit
for i in $user; do
    if ! id $i &> /dev/null; then
        echo "$i not exists"
    else

        let j=`id -u $i`
        let sum+=$j
    fi
done
echo "Sum is $sum!"

14、寫一個腳本

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

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

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

#!/bin/bash
read -p "Please enter file path:" file
[ -z "$file"  ] && echo "At least one path." && exit
for i in $file; do
    if [ ! -e $i ]; then
        echo "$i No such file!"
    continue 3
    elif [ -d $i ]; then
        echo "$i is directory!"
        let j++
    elif [ -f $i ]; then
        echo "$i is  common file!"
        let a++
    elif [ -L $i ]; then
        echo "$i is symbolic file!"
        let b++
    else
        echo "$i is Other type!"
    fi
done
echo "Directory : $j"
echo "Common file : $a"
echo "Symbolic file : $b"

15、寫一個腳本

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

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

#!/bin/bash
[ $# -ne 1 ] && echo "Please enter one user!!!" && exit
! id $1 &> /dev/null && echo "No this user." && exit
let a=`id -u $1`
if [ $a -ge 500 ]; then
    echo "$1 is common user."
else
    echo "$1 is system user."
fi

16、寫一個腳本

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

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

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

#!/bin/bash
for i in {1..10}; do
    if id user$i &> /dev/null ;then
        echo "user$i exists."
        continue 3
    else
        useradd user$i
        if [ $? -eq 0 ]; then
            echo "user$i" | passwd --stdin user$i &> /dev/null
            echo "Add user$i finished."
        let j++
        fi
    fi
done
echo "Add $j users."

17、打印九九乘法表;

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

使用while循環
#!/bin/bash
declare -i i=1
declare -i j=1
while [ $i -le 9 ]; do
    while [ $j -le $i ]; do
        echo -e -n "${i}X${j}=$[$i*$j]\t"
        let j++
    done
    echo 
    let i++
    let j=1
done 

使用until循環
#!/bin/bash
declare -i i=1
declare -i j=1
until [ $i -gt 9 ]; do
    until [ $j -gt $i ]; do
        echo -n -e "${i}X${j}=$[$i*$j]\t"
        let j++
    done
    echo
    let i++
    let j=1
done

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

(0)
JeasonJeason
上一篇 2016-08-29
下一篇 2016-08-29

相關推薦

  • linux常用命令實戰練習–第一周作業

    1、使用date命令,顯示前10天的年月日,顯示后20天的年月日。 [root@chen ~]# date  Fri Jul 22 20:26:02 CST 2016 [root@chen ~]# date -d -10day &…

    Linux干貨 2016-07-22
  • Sed文本文件工具的使用詳解

    Sed文本文件工具的使用詳解 一、概述 sed 工具實際上就是一個非交互式的編輯器,主要是為了處理文本而生的,我們知道處理文本的三劍客是 grep sed awk 我們之前學習過 grep 文本過濾工具,它的主要作用是為了過濾文本,而sed 工具也是過濾文本,只不過sed工具針對的是文件中的每一行,而且sed工具更加強大,下面還具體說明一下sed 工具的原理…

    Linux干貨 2016-10-09
  • HSRP vs VRRP

    HSRP:(Hot Standby Router Protocol)-熱備份路由協議 是cisco平臺一種特有的技術,是cisco的私有協議。 VRRP:(Virtual Router Redundancy Protocol)-虛擬路由冗余協議 是國際標準,由IETF提出的解決局域網中配置靜態網關出現單點失效現象的路由協議。 ----------------…

    Linux干貨 2016-10-19
  • 網絡管理之路由實現

    一.概述 跨網絡通信:路由     路由分類:         主機路由         網絡路由      …

    Linux干貨 2016-09-19
  • vsftpd

    練習:完成vsftpd配置 (1) 禁錮系統用戶于家目錄 [root@node3 ~]# yum -y install vsftpd [root@node3 ~]# vim /etc/vsftpd/vsftpd.conf chroot_local_user=YES &n…

    Linux干貨 2016-10-16
  • 馬哥教育網絡第21期-第八周課程練習

    1、請描述網橋、集線器、二層交換機、三層交換機、路由器的功能、使用場景與區別。   網橋從一個局域網接收MAC幀,拆封、校對、校驗之后,按另一個局域網的格式重新組裝,發往它的物理層。由于網橋是鏈路層設備,因此不處理數據鏈路層以上層次協議所加的報頭。   集線器的主要功能是對接收到的信號進行再生整形放大,以擴大網絡的傳輸距離,同時把所有節點…

    Linux干貨 2016-10-24

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-08-30 13:22

    如此好的原創圖應該發到群里供其它同學學習一下,很好,很詳細,很規范

欧美性久久久久