1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。
网桥:一种网路装置,负责网路桥接,将网络的多个网段在数据链路层连接起来。 集线器:将多条以太网线或光纤集合连接在同一段物理介质下的装置。工作在物理层。 二层交换机:工作在数据链路层,交换机内部的CPU会在每个端口成功连接时,通过将MAC地址和端口对应,形成一张MAC表。在今后的通讯中,发往该MAC地址的数据包将仅送往其对应的端口,而不是所有的端口。因此,交换机可用于划分数据链路层广播,即冲突域;但它不能划分网络层广播,即广播域。 三层交换机:三层交换机可以处理第三层网络层协议,用于连接不同网段,通过对缺省网关的查询学习来建立两个网段之间的直接连接。三层交换机具有一定的“路由”功能,但只能用于同一类型的局域网子网之间的互联。这样,三层交换机可以像二层交换机那样通过MAC地址标识数据包,也可以向传统路由器那样在两个局域网子网之间进行功能较弱的路由转发,它的路由转发不是通过软件来维护的路由表。而是通过专用的ASIC芯片处理这些转发。 路由器:提供路由与转送两种重要机制,可以决定数据包从来源端到目的端所经过的路由路径,这个过程称为路由;将路由器输入端的数据包移送至适当的路由器输出端,这称为转送。
2、IP地址的分类有哪些?子网掩码的表示形式及其作用
IP地址分为: A类:1.0.0.1-126.255.255.254 网络数:126 每个网络中的主机数:2^24-2 默认子网掩码:255.0.0.0 私网地址:10.0.0.0/8-10.255.255.255/8 B类:128.0.0.1-191.255.255.254 网络数:2^14 每个网络中的主机数:2^16-2 默认子网掩码:255.255.0.0 私网地址:172.16.0.0/16-172.31.255.255/16 C类:192.0.0.1-223.255.255.254 网络数:2^21 每个网络中的主机数:2^8-2 默认子网掩码:255.255.255.0 私网地址:192.168.0.0/24-192.168.255.255/24 D类:组播 224.0.0.1-239.255.255.254 E类:240.0.0.1-255.255.255.254 子网掩码:将IP地址划分为网络地址与主机地址,与IP地址相与可计算出相应主机的网络地址
3、计算机网络的分成模型有哪些(OSI模型和TCP/IP模型),每一层的功能及涉及到的物理设备有哪些。
OSI模型:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层 ①物理层(Physical layer):利用物理传输介质为数据链路层提供物理连接, 如:集线器、网线、光纤、同轴电缆等; 在这一层,数据的单位称为比特(bit)。物理层定义的典型规范代表包括:EIA/TIA RS-232、EIA/TIA RS-449、V.35、RJ-45等 数据链路层(Data link layer):将数据分帧,并处理流控制,屏蔽物理层, 为网络层提供一个数据链路的连接,进行几乎无差错的数据传输,如:网卡、网桥、二层交换机; 该层的作用包括:物理地址寻址、数据的成帧、流量控制、数据的检错、重发等。 在这一层,数据的单位称为帧(frame)。数据链路层协议的代表包括:SDLC、HDLC、PPP、STP、 帧中继等。 网络层(Network layer):负责路由转发和控制网络拥塞,如:路由器、三层交换机等; 在这一层,数据的单位称为数据包(packet)。网络层协议的代表包括:IP、IPX、RIP、OSPF等。 传输层(Transport layer):负责将上层数据分段并提供端到端的、可靠(TCP) 或不可靠(UDP)的数据传输;在这一层,数据的单位称为数据段(segment)。 传输层协议的代表包括:TCP、UDP、SPX等。 会话层(Session layer):负责两个节点之间的连接和断开;管理主机之间的会话进程, 即负责建立、管理、终止进程之间的会话。会话层还利用在数据中插入校验点来实现数据的同步。 表示层(Presentation layer):负责加密和解密;表示层的数据转换包括数据的加密、 压缩、格式转换等。 应用层(Application layer):用于进程间通信,常用的协议有HTTP、FTP、SMTP、TELNET等 (2)TCP/IP模型:网络接入层 、网际互联层、传输层、应用层 网络接入层:与OSI参考模型中的物理层和数据链路层相对应,负责监视数据在主机和网络之 间的交换; 网际互连层:相当于OSI的网络层,主要处理主机到主机间的通信;该层定义了分组格式和协议, 即IP协议(Internet Protocol)。除了需要完成路由的功能外,也可以完成将不同类型的网络 (异构网)互连的任务,也需要完成拥塞控制的功能。 传输层:对应于OSI参考模型的传输层,为应用层实体提供端到端的通信功能,保证了数据包的 顺序传送及数据的完整性,该层定义了两种服务质量不同的协议:传输控制协议TCP(transmission control protocol)和用户数据报协议UDP(user datagram protocol)。 应用层:对应于OSI参考模型的会话层、表示层和应用层,面向不同的网络应用引入了不同的 应用层协议,如:FTP、HTTP等
4、如何将Linux主机接入到TCP/IP网络,请描述详细的步骤。(手动指定的方式)
设置IP/mask vim /etc/sysconfig/network-scripts/ifcfg-eth0 设置路由:默认网关 vim /etc/sysconfig/network 设置DNS服务器:主,次5、为Linux主机配置网络信息的方式有哪些,请描述各个过程。 (1)编辑配置文件: vim /etc/sysconfig/network-scripts/ifcfg-eth0 vim /etc/resolv.conf nameserver DNS_SERVER_IP1 nameserver DNS_SERVER_IP2 (2)通过图形界面:cenos6:setup centos7:system-config-network-tui (3)通过命令: 通过ifconfig命令设置IP地址与子网掩码 ifconfig eth0 [up|down] ifconfig eth0 192.168.99.95/24 ifconfig eth0 192.168.99.95 netmask 255.255.255.0 ②通过route命令添加路由条目 route add -host 192.168.99.95 gw 192.168.89.1 dev eth0 route add -net 192.168.99.0 netmask 255.255.255.0 gw 192.168.98.1 dev eth0 route add -net 0.0.0.0 netmask 0.0.0.0 gw 192.168.89.1 route add default gw 192.168.89.1 route del -host 192.168.99.95 route del -net 192.168.0.0 netmask 255.255.255.0 route del default gw 192.168.89.1 通过ip命令设置IP地址,子网掩码与路由条目 ip link set dev eth0 [up|down] ip link show [dev IFACE] [up] ip addr add 172.16.10.13/16 dev eth0 ip addr del 172.16.10.13/16 dev eth0 ip addr show [dev IFACE] ip addr flush [dev IFACE] ip route add 192.168.1.3 via 172.16.0.1 dev eth0 ip route add 192.168.0.0/24 via 172.16.0.1 dev eth0 ip route add default via 172.16.0.1 ip route del 192.168.1.3 ip route del 192.168.0.0/24 ip route del default CentOS 7 nmcli connection show nmcli connection add type ethernet con-name NEW ifname eno16777736 ip4 192.168.1.141 gw4 192.168.1.1
-
6、写一个脚本,使用ping命令探测172.16.250.1- 172.16.250.254之间的所有主机的在线状态;
-
在线的主机使用绿色显示;
-
不在线的主使用红色显示;
#!/bin/bash # net='172.16.250' uphosts=0 downhosts=0 for i in {1..254}; do ping -c 1 -w 1 ${net}.${i} &> /dev/null if [ $? -eq 0 ]; then echo -e "\033[31m"$net.$i is up."\033[0m" let uphosts++ else echo -e "\033[31m "$net.$i is down." \033[0m" let downhosts++ fi done echo -e "\033[31m"Up hosts: $uphosts."\033[0m" echo -e "\033[32m"Down hosts: $downhosts."\033[0m"
7、详细描述每个网络接口的配置文件中各个参数的含义和其所对应的值;
IP,MASK,GW,DNS配置文件:/etc/sysconfig/network-scripts/ifcfg-IFACE DEVICE=此配置文件应用到的设置(eth0) HWADDR=对应设备的MAC地址 BOOTPROTO=激活此设备时使用的地址配置协议,常用的dhcp,static,none,bootp NM_CONTROLLED=NM是NetworkManager的简写:此网卡是否接受NM控制(CentOS6建议为no) ONBOOT=在系统引导时是否激活此设备 TYPE=接口类型,常见有Ethernet,Bridge UUID=设备的唯一标示 IPADDR=指明IP地址 NETMASK=子网掩码 GATEWAY=默认网关 DNS1=第1个DNS服务器指向 DNS2:第2个DNS服务器指向
8、如何给网络接口配置多个地址,有哪些方式?
ifconfig # ifconfig eth0:0 192.168.0.22/24 ip # ip addr add 192.168.0.22/24 dev eth0 # ip addr add 192.168.0.22/24 dev eth0 label 'eth0:0' 配置文件 # ifcfg-IFACE_ALIAS # DEVICE=IFACE_ALIAS 删除其中的HWADDR与UUID,如果没有其他网关作为出口,也可以将GATEWAY删除
9、常用的网络管理类工具有哪些,并用示例形式描述他们的使用方法。
ifconfig设置网卡,ifconfig eth0 192.168.0.2/24 route设置路由,rout add –host 192.168.0.2 gw 172.16.1.1 dev eth0 ip设置地址,ip addr add 192.168.0.2/24 dev eth0 netstat :netstat -ntplu 显示网络信息
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,请描述该过程。
创建挂载目录 mkdir /media/cdrom 首先挂载到某一个目录,如mount /dev/cdrom /media/cdrom 编辑或创建/etc/yum.repos.d/ 目录下以repo结尾的文件。 vim /etc/yum.repos.d/localadd.repos [cdrm] name=cdrm 名称 baseurl=file:///media/cdrom 路径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;密码同用户名;
-
(2) 用户不存在时才添加;存在时则跳过;
-
(3) 最后显示本次共添加了多少用户;
#!/bin/bash count=0 for i in {1..10};do if id user$i &>/dev/null;then echo "user$i exists." break else useradd user$i fi if [ $? -eq 0 ];then echo "user$i" | passwd --stdin user$i &> /dev/null echo "Add user$i finished." let count+=1 fi done echo "add $count new user$i" echo "to users:`wc -l /etc/passwd | cut -d' ' -f1`"
17、写一脚本,用ping命令测试172.16.250.20-172.16.250.100以内有哪些主机在线,将在线的显示出来;
#!/bin/bash # declare -i i=1 declare -i uphosts=0 declare -i downhosts=0 net='172.16.250' while [ $i -le 100 ]; do if ping -c 1 -w 1 $net.$i &> /dev/null; then echo "$net.$i is up." let uphosts++ else echo "$net.$i is down." let downhosts++ fi let i++ done echo "Up hosts: $uphosts." echo "Down hosts: $downhosts."
18、打印九九乘法表;
#!/bin/bash # for 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_ Dominic,如若转载,请注明出处:http://www.178linux.com/39781
评论列表(1条)
作业写得非常的好,6题的排版有一点小问题哈,16题脚本的缩进需要注意一下的,加油!