1、請描述網橋、集線器、二層交換機、三層交換機、路由器的功能、使用場景與區別。
集線器的主要功能是對接收到的信號進行再生整形放大,以擴大網絡的傳輸距離,同時把所有節點集中在以它為中心的節點上。它工作于OSI(開放系統互聯參考模型)參考模型第一層,即“物理層”。 網橋將兩個相似的網絡連接起來,并對網絡數據的流通進行管理。它工作于數據鏈路層,不但能擴展網絡的距離或范圍,而且可提高網絡的性能、可靠性和安全性。 二層交換機工作于OSI模型的第2層(數據鏈路層),故而稱為二層交換機。二層交換技術的發展已經比較成熟,二層交換機屬數據鏈路層設備,可以識別數據包中的MAC地址信息,根據MAC地址進行轉發,并將這些MAC地址與對應的端口記錄在自己內部的一個地址表中。 三層交換機就是具有部分路由器功能的交換機,三層交換機的最重要目的是加快大型局域網內部的數據交換,所具有的路由功能也是為這目的服務的,能夠做到一次路由,多次轉發。對于數據包轉發等規律性的過程由硬件高速實現,而像路由信息更新、路由表維護、路由計算、路由確定等功能,由軟件實現。三層交換技術就是二層交換技術+三層轉發技術。傳統交換技術是在OSI網絡標準模型第二層——數據鏈路層進行操作的,而三層交換技術是在網絡模型中的第三層實現了數據包的高速轉發,既可實現網絡路由功能,又可根據不同網絡狀況做到最優網絡性能。 路由器(Router),是連接因特網中各局域網、廣域網的設備,它會根據信道的情況自動選擇和設定路由,以最佳路徑,按前后順序發送信號。路由和交換機之間的主要區別就是交換機發生在OSI參考模型第二層(數據鏈路層),而路由發生在第三層,即網絡層。路由器(Router)又稱網關設備(Gateway)是用于連接多個邏輯上分開的網絡,所謂邏輯網絡是代表一個單獨的網絡或者一個子網。當數據從一個子網傳輸到另一個子網時,可通過路由器的路由功能來完成。因此,路由器具有判斷網絡地址和選擇IP路徑的功能,它能在多網絡互聯環境中,建立靈活的連接,可用完全不同的數據分組和介質訪問方法連接各種子網,路由器只接受源站或其他路由器的信息,屬網絡層的一種互聯設備。
2、IP地址的分類有哪些?子網掩碼的表示形式及其作用
最初設計互聯網絡時,為了便于尋址以及層次化構造網絡,每個IP地址包括兩個標識碼(ID),即網絡ID和主機ID。同一個物理網絡上的所有主機都使用同一個網絡ID,網絡上的一個主機(包括網絡上工作站,服務器和路由器等)有一個主機ID與其對應。IP地址根據網絡ID的不同分為5種類型,A類地址、B類地址、C類地址、D類地址和E類地址。 1. A類IP地址 一個A類IP地址由1字節的網絡地址和3字節主機地址組成,網絡地址的最高位必須是“0”, 地址范圍從1.0.0.0 到126.0.0.0。可用的A類網絡有126個,每個網絡能容納1億多個主機。 2. B類IP地址 一個B類IP地址由2個字節的網絡地址和2個字節的主機地址組成,網絡地址的最高位必須是“10”,地址范圍從128.0.0.0到191.255.255.255??捎玫腂類網絡有16382個,每個網絡能容納6萬多個主機 。 3. C類IP地址 一個C類IP地址由3字節的網絡地址和1字節的主機地址組成,網絡地址的最高位必須是“110”。范圍從192.0.0.0到223.255.255.255。C類網絡可達209萬余個,每個網絡能容納254個主機。 4. D類地址用于多點廣播(Multicast)。 D類IP地址第一個字節以“lll0”開始,它是一個專門保留的地址。它并不指向特定的網絡,目前這一類地址被用在多點廣播(Multicast)中。多點廣播地址用來一次尋址一組計算機,它標識共享同一協議的一組計算機。 5. E類IP地址 以“llll0”開始,為將來使用保留。 全零(“0.0.0.0”)地址對應于當前主機。全“1”的IP地址(“255.255.255.255”)是當前子網的廣播地址。 在IP地址3種主要類型里,各保留了3個區域作為私有地址,其地址范圍如下: A類地址:10.0.0.0~10.255.255.255 B類地址:172.16.0.0~172.31.255.255 C類地址:192.168.0.0~192.168.255.255A類地址的第一組數字為1~126。注意,數字0和 127不作為A類地址,數字127保留給內部回送函數,而數字0則表示該地址是本地宿主機,不能傳送。 B類地址的第一組數字為128~191。 C類地址的第一組數字為192~223。1.掩碼255.0.0.0:/8(A 類地址默認掩碼)2.掩碼255.255.0.0:/16(B 類地址默認掩碼)3.掩碼255.255.255.0:/24(C 類地址默認掩碼) 子網掩碼又叫網絡掩碼、地址掩碼、子網絡遮罩,它是一種用來指明一個IP地址的哪些位標識的是主機所在的子網以及哪些位標識的是主機的位掩碼。子網掩碼不能單獨存在,它必須結合IP地址一起使用。子網掩碼只有一個作用,就是將某個IP地址劃分成網絡地址和主機地址兩部分。
3、計算機網絡的分成模型有哪些(OSI模型和TCP/IP模型),每一層的功能及涉及到的物理設備有哪些。
物理層 ---利用傳輸介質為數據鏈路層提供物理連接/網卡,網線,集線器 數據鏈路層 ---負責建立和管理節點間的鏈路/網橋,交換機 網絡層 ---該層控制數據鏈路層與傳輸層之間的信息轉發,建立、維持和終止網絡的連接/路由器 傳輸層 ---傳輸層提供會話層和網絡層之間的傳輸服務 會話層 ---向兩個實體的表示層提供建立和使用連接的方法 表示層 ---對來自應用層的命令和數據進行解釋,對各種語法賦予相應的含義,并按照一定的格式傳送給會話層 應用層 ---是計算機用戶,以及各種應用程序和網絡之間的接口,其功能是直接向用戶提供服務,完成用戶希望在網絡上完成的各種工作
4、如何將Linux主機接入到TCP/IP網絡,請描述詳細的步驟。(手動指定的方式)
修改網卡配置 vim /etc/sysconfig/network-scripts/ifcfg-eth0 根據所在網絡的網關配置ip等相關信息 BOOTPROTO=static IPADDR=192.168.194.131 NETMASK=255.255.255.0 ONBOOT=yes GATEWAY=192.168.194. 重啟服務 service network restart
5、為Linux主機配置網絡信息的方式有哪些,請描述各個過程。
1)使用命令ifconfig eth0 192.168.194.131 立即生效,但重啟系統后失效 2)修改網卡配置 vim /etc/sysconfig/network-scripts/ifcfg-eth0 需要重啟后生效 3)使用圖形界面 setup--網絡配置 修改后重啟服務
6、寫一個腳本,使用ping命令探測172.16.250.1-172.16.250.254之間的所有主機的在線狀態;
在線的主機使用綠色顯示;
不在線的主使用紅色顯示;
#!/bin/bash # rangip='172.16.250.' for i in {1..254};do ( ping -c 1 $rangip$i &> /dev/null; if [ $? -eq 0 ];then echo -e "\e[1;32m $rangip$i \e[0m" else echo -e "\e[1;31m $rangip$i \e[0m" fi )& done wait
7、詳細描述每個網絡接口的配置文件中各個參數的含義和其所對應的值;
DEVICE=eth0 ---網卡設備名稱 TYPE=Ethernet ---接口類型 UUID=f12891d5-b39f-4203-8bdf-373151db701---唯一標識 ONBOOT=yes ---開機激活 NM_CONTROLLED=yes ---是否接受NetworkManager服務腳本來配置此設備 BOOTPROTO=dhcp ---ip獲取類型靜態為static|none HWADDR=00:0C:29:0D:17:94 ---MAC地址 PEERDNS=yes ---不接受DHCP服務器指派的DNS服務器地址 IPADDR=192.168.194.131 ---ip地址 NETMASK=255.255.255.0 ---子網掩碼 GATEWAY= ---網關
8、如何給網絡接口配置多個地址,有哪些方式?
1)ifconfig eth0:1 192.168.194.131 2)新建eth0:0配置文件 vim /etc/sysconfig/network-scripts/ifcfg-eth0:0 DEVICE=eth0:0 BOOTPROTO=static IPADDR=192.168.194.131 NETMASK=255.255.255.0 ONBOOT=yes
9、常用的網絡管理類工具有哪些,并用示例形式描述他們的使用方法。
ping ping 192.168.194.131 traceroute traceroute 192.168.194.131 netstat(ss) -nltp -nap
10、Linux系統軟件包管理方法(安裝、升級、卸載等操作)有哪些,以及如何管理的。
rpm包管理器 安裝:rpm -ivh packagefile 卸載:rpm -e packagefile 升級:rpm -Uvh packagefile yum 安裝:yum install packagefile 卸載:yum remove packagefile 升級:yum update packagefile
11、如何使用發行版光盤作為yum repository,請描述該過程。
1)掛載光盤到指定目錄 mount /dev/cdrom /mnt 2)創建配置文件 vim /etc/yum.repos.d/mysoft.repo [soft] ---指定容器名稱 name=mysoft ---容器描述 baseurl=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 # ls /etc/rc.d/rc3.d/ |sed -n 's/^K/stop&/p' ls /etc/rc.d/rc3.d/ |sed -n 's/^S/start&/p' knum=`ls /etc/rc.d/rc3.d/ |sed -n 's/^K/stop&/p' | wc -l` snum=`ls /etc/rc.d/rc3.d/ |sed -n 's/^S/start&/p'|wc -l` echo "$knum 個K開頭的文件" echo "$snum 個S開頭的文件"
13、寫一個腳本,完成以下功能
(1) 腳本能接受用戶名作為參數;
(2) 計算此些用戶的ID之和;
#!/bin/bash # [ $# -eq 0 ] && echo "usage:$0 username" declare -a uss declare -a xxx sum=0 uss=(`awk -F: '{print $1}' /etc/passwd | xargs`) xxx=($@) bb() { for x in ${xxx[@]};do if echo ${uss[@]} | grep -w "$x" &>/dev/null;then let sum+=`id -u $x` else echo "$x is not user" fi done } bb echo "the user id sum is $sum"
14、寫一個腳本
(1) 傳遞一些目錄給此腳本;
(2) 逐個顯示每個目錄的所有一級文件或子目錄的內容類型;
(3) 統計一共有多少個目錄;且一共顯示了多少個文件的內容類型;
#!/bin/bash # [ $# -eq 0 ] && echo "usage $0:dirpath" ddd=($@) sum=0 for i in ${ddd[@]};do if [ -d $i ];then aa=`cd $i && pwd` file $aa/* let sum+=`file $aa/* |grep 'directory'|wc -l` file $aa/* | awk '{print $2}' >> /tmp/dir.txt else echo "$i is not a dir" exit fi done echo "there is $sum dir" echo "there are the type with the content+++++++++++" cat /tmp/dir.txt |sort |uniq -c rm -rf /tmp/dir.txt
15、寫一個腳本
通過命令行傳遞一個參數給腳本,參數為用戶名
如果用戶的id號大于等于500,則顯示此用戶為普通用戶;
#!/bin/bash # [ $# -eq 0 ] && echo "usage:$0 username" && exit [ $# -gt 1 ] && echo "args must one" && exit declare -a uss uss=(`awk -F: '{print $1}' /etc/passwd | xargs`) if echo ${uss[@]} | grep -w "$1" &>/dev/null;then [ `id -u $1` -gt 500 ] && echo "$1 is normal user" else echo "$1 is not a user" fi
16、寫一個腳本
(1) 添加10用戶user1-user10;密碼同用戶名;
(2) 用戶不存在時才添加;存在時則跳過;
(3) 最后顯示本次共添加了多少用戶;
#!/bin/bash # sum=0 for i in {1..10};do id user$i &>/dev/null if [ $? -eq 0 ];then continue else useradd user$i echo "user$i" | passwd --stdin user$i &>/dev/null let sum++ fi done echo "there are $sum users added"
17、寫一腳本,用ping命令測試172.16.250.20-172.16.250.100以內有哪些主機在線,將在線的顯示出來;
#!/bin/bash # ips="172.16.250." for i in {20..100};do (ping -c 1 $ips$i &>/dev/null [ $? -eq 0 ] && echo "$ips$i is online" )& done wait
18、打印九九乘法表
for ((i=1;i<10;i++)) do for((j=1;j<=$i;j++)) do echo -e -n "$j*$i=`expr $(($i*$j))`\t" done echo done
原創文章,作者:hhaa0352,如若轉載,請注明出處:http://www.www58058.com/47183
12題是不是不對啊,腳本在調整一下,優雅一點