1、請描述網橋、集線器、二層交換機、三層交換機、路由器的功能、使用場景與區別。
網橋:鏈接層設備,基于MAC地址過濾。
集線器:物理層設備,基本都屬于半雙工模式。集線器與網橋在現在的局域網中基本都不用了。
二層交換機:基本MAC轉發數據,功能齊全的可支持VLAN等功能。常見的有100/1000M、16口/24口/48口。
三層交換機:功能齊全的交換機,具備都靜態路由、動態路由、VLAN、policy、DHCP等功能??捎糜诰W絡的匯聚與核心設備。
路由器:一般用于局域網的出口、不同網絡之間的連接的位置,常用的功能主要有各種路由協議、VPN、NAT等功能
2、IP地址的分類有哪些?子網掩碼的表示形式及其作用
A類:1.0.0.0 – 126.255.255.255 其中10.0.0.0/8是私網IP地址。
B類:128.0.0.0 – 191.255.255.255 其中172.16.0.0/16 – 172.31.255.255/16是私網IP地址
C類:192.0.0.0 – 223.255.255.255 其中192.168.0.0/24是私網IP地址
D類:224.0.0.0 – 239.255.255.255 專用于組播
E類:240.0.0.0 – 240.255.255.255 專用實
3、計算機網絡的分成模型有哪些(OSI模型和TCP/IP模型),每一層的功能及涉及到的物理設備有哪些。
OSI模型:物理層(集線器、網絡) 、數據鏈路層(交換機)、網絡層(路由器、防火墻)、傳輸層、表示層、會話層、應用層
TCP/IP模型:物理層、數據鏈路層、網絡層、應用層
4、如何將Linux主機接入到TCP/IP網絡,請描述詳細的步驟。(手動指定的方式)
vim /etc/sysconfig/network-srcipts/ifcfg-eth0 BOOTPROT=static IPADDR=192.168.1.2(例如) NETMASK=255.255.255.255(例如) GATEWAY=192.168.1.1(例如) DNS1=8.8.8.8 service network restart 重啟網絡服務,應用新配置
5、為Linux主機配置網絡信息的方式有哪些,請描述各個過程。
修改/etc/sysconfig/network-srcipts/目錄下的網卡配置文件,修改完成后重啟network服務以生效。
使用命令修改,如ifconfig eth0 192.168.1.1/24 up,但重啟后丟失配置。還可以使用如ip\nmcli等命令
6、寫一個腳本,使用ping命令探測172.16.250.1-172.16.250.254之間的所有主機的在線狀態;
在線的主機使用綠色顯示;
不在線的主使用紅色顯示;
#!/bin/bash ipaddr=172.16.250. for i in {1..254};do if ping $ipaddr$i -c 2 -W 2 &> /dev/null;then echo -e "\033[32m $ipaddr$i" else echo -e "\033[031m $ipaddr$i" fi done echo -e "\033[37m "
7、詳細描述每個網絡接口的配置文件中各個參數的含義和其所對應的值;
DEVICE:此配置文件應用到的設備;
HWADDR:對應的設備的MAC地址;
BOOTPROTO:激活此設備時使用的地址配置協議,常用的dhcp, static, none, bootp;
NM_CONTROLLED:NM是NetworkManager的簡寫;此網卡是否接受NM控制;CentOS6建議為“no”;
ONBOOT:在系統引導時是否激活此設備;
TYPE:接口類型;常見有的Ethernet, Bridge;
UUID:設備的惟一標識;
PADDR:指明IP地址;
NETMASK:子網掩碼;
GATEWAY: 默認網關;
DNS1:第一個DNS服務器指向;此處的DNS配置優先于/etc/resolv.conf文件中的DNS配置
DNS2:第二個DNS服務器指向;
USERCTL:普通用戶是否可控制此設備;
PEERDNS:如果BOOTPROTO的值為“dhcp”,是否允許dhcp server分配的dns服務器指向信息直接覆蓋至/etc/resolv.conf文件中;
8、如何給網絡接口配置多個地址,有哪些方式?
ifconfig eth1:1 192.168.1.100/24 up 配置完成后ifconfig 會顯示
ip addr add 192.168.1.101/24 dev eth1 配置完后后ifconfig 不顯示,需要使用ip addr show
9、常用的網絡管理類工具有哪些,并用示例形式描述他們的使用方法。
ifconfig命令:
ifconfig 顯示所有網卡的IP地址
ifconfig eth1 顯示指定的網卡IP地址,這里eth1
ifconfig eth1 down/up 關閉或啟用指定的網卡,這里eth1
ifconfig eth1:1 ip_address/mask up/down 配置子接口的IP地址,并啟用或關閉
IP命令
常用的IP子命令有 {link | addr | route }
ip link
show {up|down} 查看狀態屬于是up或down的接口
set {up|down|arp on|arp off |mtu|mac_address|..}設置接口的二層屬性
ip addr
add {dev|local|broadcast|..} 添加IP地址。例如ip addr add dev eth1:2 local 192.168.1.102/24
delete 刪除接口的IP地址。ip addr delete dev eth1 192.168.1.103/24
show 查看接口的IP地址
ip route
ip route add 添加路由。例如ip route add 192.168.1.0/24 via 172.16.1.1 dev eth0 添加去往192.168.1.0/24的路由,下一跳是172.16.1.1;ip route add default 172.16.1.1 添加默認路由
delete 刪除路由。例如ip route delete 192.168.1.0/24
show 查看路由表
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 查看指定程序的信息
11、如何使用發行版光盤作為yum repository,請描述該過程。
首先掛載到某一個目錄,如mount /dev/cdrom1 /mnt
編輯或創建/etc/yum.repos.d/ 目錄下以repo結尾的文件。
vim /etc/yum.repos.d/localadd.repos
[cdrm]
name=cdrm 名稱
baseurl=file:///mnt/ 路徑
cost=1 成本
gpgcheck=0 不檢查
enabled=1 開啟
12、寫一個腳本,完成以下功能
(1) 假設某目錄(/etc/rc.d/rc3.d/)下分別有K開頭的文件和S開頭的文件若干; (2) 顯示所有以K開頭的文件的文件名,并且給其附加一個stop字符串; (3) 顯示所有以S開頭的文件的文件名,并且給其附加一個start字符串; (4) 分別統計S開頭和K開頭的文件各有多少; #!/bin/bash k=0 s=0 for i in $(ls /etc/rc.d/rc3.d/K* | grep -o "[^/]*$"); do echo "$i stop" let k=$k+1 done for i in $(ls /etc/rc.d/rc3.d/S* | grep -o "[^/]*$");do echo "$i start" let s=$s+1 done echo "K file $k; S file $s"
13、寫一個腳本,完成以下功能
(1) 腳本能接受用戶名作為參數;
(2) 計算此些用戶的ID之和;
#/bin/bash sum=0 for i in $*;do if id $i &> /dev/null ;then userid=`id -u $i` let sum=$sum+$userid else echo "user $i not found" fi done echo "User id sum is $sum"
14、寫一個腳本
(1) 傳遞一些目錄給此腳本;
(2) 逐個顯示每個目錄的所有一級文件或子目錄的內容類型;
(3) 統計一共有多少個目錄;且一共顯示了多少個文件的內容類型;
#/bin/bash for i in $*;do typed=0 typef=0 filenume=0 for ii in `ls $i`;do let filenume=$filenume+1 if [ -d $i/$ii ];then let typed=$typed+1 elif [ -f $i/$ii ]; then let typef=$typef+1 fi done echo "$i" echo "$i director $typed, file $typef" done
15、寫一個腳本
通過命令行傳遞一個參數給腳本,參數為用戶名
如果用戶的id號大于等于500,則顯示此用戶為普通用戶
#!/bin/bash for i in $*;do if ! id $i > /dev/null ; then echo "There is no for user $i" else userid=`id -u $i` if [ $userid -ge 500 ];then echo "user $i is average user " else echo "user $i is system user" fi fi done
16、寫一個腳本
(1) 添加10用戶user1-user10;密碼同用戶名;
#!/bin/bash for i in {1..10};do if id user$i > /dev/null; then continue else useradd user$i echo "user$i" | passwd --stdin user$i fi done
原創文章,作者:Net20-deamon,如若轉載,請注明出處:http://www.www58058.com/27131
寫的很好,排版也很棒,加油