1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。
网桥:也叫做桥接器,工作在OSI七层中第二层数据链路层,主要是用来连接两个局域网的一种存储或者转发设备,它能将一个大的LAN分隔 为多个网段,也可以将多个LAN互联为一个逻辑LAN,网桥是在数据层上实现的局域网互联;即使两个采用不同数据链路层协议,不同 的传输介质或不同的传输速率;网桥以接受、存储、地址过滤与转发的方式实现互联的网络之间的通信,并且需要互联的网络在数据 链路层采用相同的协议。 集线器:工作在OSI七层中的第一层物理层,功能是对接受到的信号进行再生整形放大以扩大网络的传输距离,同时把所有节点集中在以它为 中心的节点上,它属于局域网中的基础设备。 二层交换机:工作于OSI七层模型中的第二层数据链路层,故称为二层交换机,它可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并 将这些MAC地址与对应的端口记录在自己内部的一个地址表中。 三层交换机:简单的来说就是具有部分路由功能的交换机, 三层交换机最重要的目的是加快大型局域网的数据交换,它所具有的路由功能也是 为了这一目的服务的,能够做到一次路由,多次转发。三层交换机技术就是二层交换机+三层转发技术,传统的交换技术是在OSI 的第二层数据链路层进行工作,而三层交换技术是在网络模型中的第三层实现了数据包的高速转发,既可实现网络路由功能,又 可以根据不同的网络状况做到最优网络性能。 路由器:工作在OSI七层中的第三层网络层,用于连接多个逻辑上分开的网络,所谓逻辑网络是代表一个单独的网络或者一个子网, 当数据从 一个子网传输到另外一个子网时,可以通过路由器的路由功能来完成,因此路由既有判断网络地址和选择IP路径的功能,它能在多网 络互联环境中,建立灵活的连接。
2、IP地址的分类有哪些?子网掩码的表示形式及其作用。
IP地址可分为局域网IP与互联网IP 而局域网IP又可分为三类(局域网IP又称私有地址) A类:10.0.0.0/8 B类:172.16.0.0/16----172.31.0.0/16 C类:192.168.0.0/24----192.168.255.0/24 互联网IP可分为5类(互联网IP又称为公有地址) A类: 1-127 127.0.0.1为本机地址 B类:128-191 C类:192-223 D类:224-239 E类:240-254 子网掩码的表示形式可分为三种: 第一种A类网络缺省子网掩码:255.0.0.0 也可以表示为8 例:10.0.0.1/8 第二种B类网络缺省子网掩码:255.255.0.0 也可以表示为16 例:172.16.0.1/16 第三种C类网络缺省子网掩码:255.255.255.0 也可以表示为24 例:192.168.0.1/24 作用:网掩码是一个32位地址,是与IP地址结合使用的一种技术。它的主要作用有两个,一是用于屏蔽IP地址的一部分以区别网络标识和 主机标识,并说明该IP地址是在局域网上,还是互联网上。二是用于将一个大的IP网络划分为若干小的子网络。
3、计算机网络的分成模型有哪些(OSI模型和TCP/IP模型),每一层的功能及涉及到的物理设备有哪些。
4、如何将Linux主机接入到TCP/IP网络,请描述详细的步骤。(手动指定的方式)
~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 HWADDR=00:0C:29:FE:4A:E5 TYPE=Ethernet UUID=c2aae0c9-b347-49b1-8027-bf4e5e22865c ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=static IPADDR=192.168.0.110 PREFIX=24 GATEWAY=192.168.0.1 DNS1=218.30.19.50 DNS2=61.134.1.4 ~]# service network restart
5、为Linux主机配置网络信息的方式有哪些,请描述各个过程。
添加IP地址 第一种 ~]# ifconfig eth0 192.168.0.110/24 第二种 ~]# ifconfig eyh0 192.168.0.110 netmask 255.255.255.0 第三种(只是在原来的基础上添加一个新的地址,不会对原来的地址造成影响) ~]# ip addr add 192.168.0.111/24 dev eth0 第四种(别名网卡地址) ~]# ip addr add 192.168.0.112/24 dev eth0 lable eth0:0 删除IP地址 ~]# ip addr del 192.168.0.111/24 dev eth0 删除别名网卡的IP地址 ~]# ip addr del 192.168.0.112/24 dev eth0 lable eth0:0 使用命令 ~]# setup 改变配置文件 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
6、写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间的所有主机的在线状态;
在线的主机使用绿色显示;
不在线的主使用红色显示;
#!/bin/bash for ((i=1;i<=254;i++));do ping -c 1 -w 1 172.16.250.$i &> /dev/null if [ $? -eq 0 ];then echo -e "\e[1;32m172.16.250.$i is up\e[0m" else echo -e "\e[1;31m172.16.250.$i is down\e[0m" fi done
7、详细描述每个网络接口的配置文件中各个参数的含义和其所对应的值;
~]#cat /etc/sysconfig/network NETWORKING=yes 表示网络正在运行中 HOSTNAME=ns1.magedu.com 计算机名 GATEWAY=192.168.0.1 网关的设置 ~]# cat /etc/resolv.conf # Generated by NetworkManager search magedu.com nameserver 218.30.19.50 修改DNS nameserver 61.134.1.4 DNS ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 网卡名 HWADDR=00:0C:29:FE:4A:E5 MAC地址 TYPE=Ethernet 连接方式(桥接) UUID=c2aae0c9-b347-49b1-8027-bf4e5e22865c UUID ONBOOT=yes 开机自动启动 NM_CONTROLLED=yes BOOTPROTO=static 静态地址 IPADDR=192.168.0.110 IP地址 PREFIX=24 子网掩码 GATEWAY=192.168.0.1 网关 DNS1=218.30.19.50 DNS DNS2=61.134.1.4 DNS
8、如何给网络接口配置多个地址,有哪些方式?
~]# ip addr add 192.168.0.112/24 dev eth0 ~]# ip addr add 192.168.0.113/24 dev eth0 lable eth0:0 ~]# setup
9、常用的网络管理类工具有哪些,并用示例形式描述他们的使用方法。
10、Linux系统软件包管理方法(安装、升级、卸载等操作)有哪些,以及如何管理的?
11、如何使用发行版光盘作为yum repository,请描述该过程。
~]# mkdir /media/cdrom ~]# mount /dev/cdrom /media/cdrom ~]# vim /etc/yum.repos.d/CentOS-Media.repo [c6-media] name=CentOS-$releasever - Media baseurl=file:///media/cdrom/ gpgcheck=0 enabled=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
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 declare -i o=0 for i in {$(ls -l /etc/rc.d/rc3.d/ |awk '{print $(NF-2)}'| sed 1d)};do if [[ $i =~ ^K ]];then echo $i stop let k++ elif [[ $i =~ ^S ]];then echo $i start let s++ else let o++ fi done echo "S开头的文件为$s个" echo "K开头的文件为$k个" echo "其他文件总共为$o个"
13、写一个脚本,完成以下功能
(1) 脚本能接受用户名作为参数;
(2) 计算此些用户的ID之和;
#!/bin/bah # declare -i sum=0 for i in $(cat /etc/passwd | awk -F: '{print $1}');do echo "username $i UID is $(id $i -u)" sum+=$(id $i -u) done echo "UID sum is $sum"
14、写一个脚本
(1) 传递一些目录给此脚本;
(2) 逐个显示每个目录的所有一级文件或子目录的内容类型;
(3) 统计一共有多少个目录;且一共显示了多少个文件的内容类型;
#!/bin/bash # # declare -i dir=0 declare -i b=0 declare -i c=0 declare -i s=0 declare -i p=0 declare -i f=0 declare -i h=0 if [ $# -lt 1 ];then echo "Please give at least a directory" else for i in $@;do for n in $(ls $i);do cd $i if [ -b $n ];then echo "$n is block device file" b=1 elif [ -c $n ];then echo "$n is character device file" c=1 elif [ -S $n ];then echo "$n is socket file" s=1 elif [ -p $n ];then echo "$n is name pipes file" p=1 elif [ -h $n ];then echo "$n is symbolic link file" h=1 elif [ -d $n ];then echo "$n is diretory" let dir++ d=1 elif [ -f $n ];then echo "$n is ordinary file" f=1 else echo "$n is other file" fi done let sum=$b+$c+$s+$p+$f+$h+$d done fi echo "The directory is $dir" echo "File type class is $sum"
15、写一个脚本
通过命令行传递一个参数给脚本,参数为用户名
如果用户的id号大于等于500,则显示此用户为普通用户;
#!/bin/bash # read -p "please enter the username:" option id $option &> /dev/null if [ $? -ne 0 ];then echo "user does not exist" else uid=$(id $option -u) if [ $uid -ge 500 ];then echo "$option is common user" else echo “$option is system user” fi fi
16、写一个脚本
(1) 添加10用户user1-user10;密码同用户名;
(2) 用户不存在时才添加;存在时则跳过;
(3) 最后显示本次共添加了多少用户;
#!/bin/bash # declare -i name=0 for i in {1..10};do id user$i &> /dev/null if [ $? -eq 0 ];then echo "user$i exist" else useradd user$i && echo "user$i" | passwd --stdin user$i > /dev/null let name++ fi done echo "add user sum is $name"
17、写一脚本,用ping命令测试172.16.250.20-172.16.250.100以内有哪些主机在线,将在线的显示出来;
#!/bin/bash # ip=192.168.0. for i in {100..120};do ping -c 1 -w 1 $ip$i &> /dev/null if [ $? -eq 0 ];then echo "$ip$i On line" fi done
18、打印九九乘法表;
for 实现 #!/bin/bash # for i in {1..9};do for j in $(seq 1 $i);do echo -e -n "${j}X${i}=$[$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 "${j}X${i}=$[$i*$j]\t" let j++ done echo j=1 let i++
原创文章,作者:微,如若转载,请注明出处:http://www.178linux.com/43649