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

1、 請描述網橋、集線器、二層交換機、三層交換機、路由器的功能、使用場景與區別。
在局域網內,大量主機之間的通信通過arp廣播來連接目的主機地址的,為減少在共享環境里的介質,網橋的作用是將廣播域劃分為多個小的沖突域,但廣播域沒有變。工作在OSI數據鏈路層,端口很少?;谲浖?。可以處理上層事務。

集線器:對接收到的信號進行再生整形放大,擴大網絡傳輸距離,工作在OSI物理層
集線器(hub)屬于純硬件網絡底層設備,基本上不具有類似于交換機的”智能記憶”能力和”學習”能力。它也不具備交換機所具有的MAC地址表,所以它發送數據時都是沒有針對性的,而是采用廣播方式發送。也就是說當它要向某節點發送數據時,不是直接把數據發送到目的節點,而是把數據包發送到與集線器相連的所有節點

二層交換機工作于OSI模型的第2層(數據鏈路層),故而稱為二層交換機。二層交換技術是發展比較成熟,二層交換機屬數據鏈路層設備,可以識別數據包中的MAC地址信息,根據MAC地址進行轉發,并將這些MAC地址與對應的端口記錄在自己內部的一個地址表中。
三層交換機就是具有部分路由器功能的交換機,三層交換機的最重要目的是加快大型局域網內部的數據交換,所具有的路由功能也是為這目的服務的,能夠做到一次路由,多次轉發。對于數據包轉發等規律性的過程由硬件高速實現,而像路由信息更新、路由表維護、路由計算、路由確定等功能,由軟件實現。三層交換技術就是二層交換技術+三層轉發技術。
傳統交換技術是在OSI網絡標準模型第二層–數據鏈路層進行操作的,而三層交換技術是在網絡模型中的第三層實現了數據包的高速轉發,既可實現網絡路由功能,又可根據不同網絡狀況做到最優網絡性能。

路由器(Router),是連接因特網中各局域網、廣域網的設備,它會根據信道的情況自動選擇和設定路由,以最佳路徑,按前后順序發送信號。路由和交換機之間的主要區別就是交換機發生在OSI參考模型第二層(數據鏈路層),而路由發生在第三層,即網絡層。這一區別決定了路由和交換機在移動信息的過程中需使用不同的控制信息,所以說兩者實現各自功能的方式是不同的。
路由器(Router)又稱網關設備(Gateway)是用于連接多個邏輯上分開的網絡,所謂邏輯網絡是代表一個單獨的網絡或者一個子網。當數據從一個子網傳輸到另一個子網時,可通過路由器的路由功能來完成。因此,路由器具有判斷網絡地址和選擇IP路徑的功能,它能在多網絡互聯環境中,建立靈活的連接,可用完全不同的數據分組和介質訪問方法連接各種子網,路由器只接受源站或其他路由器的信息,屬網絡層的一種互聯設備

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
子網掩碼的簡單敘述:子網掩碼是一個32位地址,用于屏蔽IP地址的一部分以
區別網絡標識和主機標識,并說明該IP地址是在局域網上,還是在遠程網上
3、 計算機網絡的分成模型有哪些(OSI模型和TCP/IP模型),每一層的功能及涉及到的物理設備有哪些。
OSI模型,應用層;提供應用程序之間通信,
表示層,處理數據格式、數據加密
會話層,建立,維護,管理會話連接涉及操作系統和網絡接口和各種數據
傳輸層,建立主機端到端連接,涉及物理設備:四層交換機
網絡層,尋址和路由選擇涉及物理設備:路由器
數據鏈路層,提供介質訪問,鏈路管理,將數據分幀并處理流控制。網卡,網橋,交換機
物理層,比特流傳輸,將數據轉換為可通過物理介質傳送的電子信號物理設備雙絞線、同軸電纜,集線器
TCP/IP模型,應用層,傳輸層,網絡層,數據鏈路層,物理層

4、 如何將Linux主機接入到TCP/IP網絡,請描述詳細的步驟。(手動指定的方式)
1) 編輯/etc/sysconfig/network-script/eth0,設置IP,MAC,網關,地址分配是靜態或動態
2) 編輯 /etc/hosts,添加IP
3) 編輯/etc/resolv.config
4) 啟動網絡服務,service network restart
5) 測試連接網絡
5、 為Linux主機配置網絡信息的方式有哪些,請描述各個過程。
1) ifconfigetho IP/mask
2) ipaddr add ip device etho
3) Linux網絡屬性配置的tui(text user interface):system-config-network-tui
4) 使用setup找到;
6、寫一個腳本,使用ping命令探測172.16.250.1-172.16.250.254之間的所有主機的在線狀態;
在線的主機使用綠色顯示;
不在線的主使用紅色顯示;
#!/bin/bash
#
#
declare -iip=1
addr=”172.16.250″

while [ $ip -le 20 ];do
if ping -c 1 -w 1 $addr.$ip&> /dev/null;then
echo ” host $addr.$ip online” >> /tmp/hosts
else
echo “host $addr.$ip offline” >> /tmp/hosts

fi
done
cat /tmp/hosts
6、 詳細描述每個網絡接口的配置文件中各個參數的含義和其所對應的值;
IP、MASK、GW、DNS相關配置文件:/etc/sysconfig/network-scripts/ifcfg-IFACE
路由相關的配置文件:/etc/sysconfig/network-scripts/route-IFACE
配置當前主機的主機名:/etc/sysconfig/networkHOSTNAME=
網絡接口識別并命名相關的udev配置文件: /etc/udev/rules.d/70-persistent-net.rules
8、如何給網絡接口配置多個地址,有哪些方式?
1) ifconfigetho IP/mask
2) ipaddr add ip device etho
3) Linux網絡屬性配置的tui(text user interface):system-config-network-tui
4) 使用setup找到;

9、常用的網絡管理類工具有哪些,并用示例形式描述他們的使用方法。
ntstat: 1查看網絡連接netstat–tan 2 查看路由netstat–r 3, 顯示網絡接口netstat–i
route路由管理命令,看:route -n 添加:routeadd:route add [-net|-host] target [netmask Nm] [gwGw] [[dev] If]
ip linkset dev IFACE up /down 激活或禁用指定接口
ipaddr { add | del } IFADDR dev IFACE
ip route add 添加路由:ip route add TARGET via GW dev IFACE src SOURCE_IP
ip route del TARGET
ss
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
11、如何使用發行版光盤作為yum repository,請描述該過程。
1)編輯/etc/yum.repos.d/centos_iso.repo
[Packages]
name=centos_iso
baseurl=file:///mnt #本地iso的掛載路徑
enabled=1 #可以使用yum
gpgcheck=0 #設置不檢查gpgkey
gpgkey=file:///mnt/RPM-GPG-KEY-centos
2)掛載光盤至某目錄,例如/mnt
# mount -r -t iso9660 /dev/cdrom /mnt
3) yum clean ; yum repolist

12、寫一個腳本,完成以下功能
(1) 假設某目錄(/etc/rc.d/rc3.d/)下分別有K開頭的文件和S開頭的文件若干;
(2) 顯示所有以K開頭的文件的文件名,并且給其附加一個stop字符串;
(3) 顯示所有以S開頭的文件的文件名,并且給其附加一個start字符串;
(4) 分別統計S開頭和K開頭的文件各有多少;

#!/bin/bash
#
#
declare -i k=0
declare -i s=0

ls /etc/rc.d/rc3.d/K*|awk ‘{printf “%sStop \n”, $1}’|awk -F’/’ ‘{print $NF}’
ls /etc/rc.d/rc3.d/S*|awk ‘{printf “%sStart \n”, $1}’|awk -F’/’ ‘{print $NF}’
k=`ls /etc/rc.d/rc3.d/K*|awk ‘{print NR}’|tail -n 1`
s=`ls /etc/rc.d/rc3.d/K*|awk ‘{print NR}’|tail -n 1`

echo “$k kfiles and $s Sfiles”
13、寫一個腳本,完成以下功能
(1) 腳本能接受用戶名作為參數;
(2) 計算此些用戶的ID之和;
#!/bin/bash
#
#
declare -i uid=0

read -p “enter users:” users

for user in ${users} ; do
if id $user &> /dev/null;then
echo “$user exists”
else
echo “$user does not exists”
fi

for uid in $(awk -F: ‘{print $1, $3}’ /etc/passwd|grep $user|awk ‘{print $2}’);do
let sumid+=$uid
done

done

echo “users id is $sumid”

14、寫一個腳本
(1) 傳遞一些目錄給此腳本;
(2) 逐個顯示每個目錄的所有一級文件或子目錄的內容類型;
(3) 統計一共有多少個目錄;且一共顯示了多少個文件的內容類型;

#!/bin/bash
#
#

if [ $# -lt 1 ]; then
echo “Usage: `basename $0` PATH”
exit 1
fi
ls -l “$@” | grep “^d” | awk ‘{print $NF}’ >directorys.log
ls -l “$@” | grep “^-” | awk ‘{print $NF}’ >files.log
ls –l $@
dir=wc –l directorys.log
file=wc –l files.log
15、寫一個腳本
通過命令行傳遞一個參數給腳本,參數為用戶名
如果用戶的id號大于等于500,則顯示此用戶為普通用戶;
#!/bin/bash
#
Read –p “Enter user” user
If id $user &> /dev/null;then
uid=`awk –F: ‘{print $3}’ /etc/passwd`
echo “$user exists ”
if [ $uid –ge 500 ];then
echo “$user is regular user”
else
echo “$user not exists”
exit 1
fi
fi

16、寫一個腳本
(1) 添加10用戶user1-user10;密碼同用戶名;
(2) 用戶不存在時才添加;存在時則跳過;
(3) 最后顯示本次共添加了多少用戶;
#!/bin/bash
#
set -x

while [ $i –le 10 ]; do
if !id user$i & > /dev/null ;then
useradd user$i
if [ $? == 0 ];then
echo “user$i” |passwd –sdin user$i & > /dev/null
fi
let user++
fi
let i++
done
echo “add $user users”
17、寫一腳本,用ping命令測試172.16.250.20-172.16.250.100以內有哪些主機在線,將在線的顯示出來;
#!/bin/bash
#
#
declare -iip=1
addr=”172.16.250″

while [ $ip -le 20 ];do
if ping -c 1 -w 1 $addr.$ip&> /dev/null;then
echo ” host $addr.$ip online” >> /tmp/hosts
else
echo “host $addr.$ip offline”

fi
done
cat /tmp/hosts

18、打印九九乘法表;
while [ $j –le 9 ];do
for i in {1..$j};do
echo –e –n “${i}*${j}=$(($i*$j)) \t”
let i++
done
done

原創文章,作者:n20-鑰匙,如若轉載,請注明出處:http://www.www58058.com/35659

(0)
n20-鑰匙n20-鑰匙
上一篇 2016-08-15
下一篇 2016-08-16

相關推薦

  • 第一周博客 計算機組成及Linux基礎入門

    1、描述計算機組成及其功能。
    2、描述羅列Linux的發行版,并描述不同發行版之間的聯系和區別。
    3、描述Linux的哲學思想,并按照自己的理解對其進行解釋。
    4、說明Linux系統上命令的使用格式,詳細介紹ifconfig、echo、tty、startx、export、pwd、history、
    shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相應的示例說明闡述。
    5、如何在Linux系統上獲取命令的幫助信息,請詳細列出,并描述man文檔的章節是如何劃分。
    6、請羅列Linux發行版的基礎目錄名稱命名法則及功能規定。

    2017-12-02
  • 網絡及TCP三次握手四次揮手

    批處理應用程序 ????FTP 、TFTP 、庫存更新 ????無需直接人工交互 ????帶寬很重要,但并非關鍵性因素 交互式應用程序 ????庫存查詢、數據庫更新。 ????人機交互。 ????因為用戶需等待響應,所以響應時間很重要,但并非關鍵性因素,除非要等待很長時間。 實時應用程序 ????VoIP 、視頻 ????人與人的交互 ????端到端的延時至…

    2017-05-06
  • Linux 發展史

    Linux 發展史 一、Linux 系統概述     首先大家需要明白,Linux 只是內核,沒有應用程序,如果想有應用程序就需要GNU 組織來提供應用程序,GNU其實就是一個開源組織,這就要說GNU 和GPL 的概念了,其實GNU可以看作就是軟件行業的共產黨組織 而GPL 就是共產黨宣言 為全人類服務。所以說GNU 和 LIN…

    Linux干貨 2016-10-19
  • History的作用及調用歷史命令的快捷方式

    History的作用及調用歷史命令的快捷方式 M21-陸東貴 CentOS 7.2 命令歷史:shell進程會在其回話中保存此前用戶提交執行過的命令; history命令:命令歷史; 命令語法:history [-c] [-d 偏移量] [n] 或           …

    Linux干貨 2016-10-19
  • bash進階學習ing

    使用read命令來接受輸入使用read來把輸入值分配給一個或多個shell變量: -p 指定要顯示的提示 -t TIMEOUT read 從標準輸入中讀取值,給每個單詞分配一個變量所有剩余單詞都被分配給最后一個變量read -p “Enter a filename: “ FILE 條件選擇if語句選擇執行:注意: if語句可嵌套單分支if 判斷條件: the…

    Linux干貨 2016-08-21
  • 文件系統管理&raid&腳本編程之參數、算數運算練習

    1、創建一個10G分區,并格式為ext4文件系統; (1) 要求其block大小為2048, 預留空間百分比為2, 卷標為MYDATA, 默認掛載屬性包含acl; (2) 掛載至/data/mydata目錄,要求掛載時禁止程序自動運行,且不更新文件的訪問時間戳; (1) ~]# fdisk /dev/sdb Welcome to…

    Linux干貨 2016-11-08

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-08-22 15:17

    寫的很好,排版還可以在漂亮一點,加油

欧美性久久久久