马哥教育网络班20期+第八周博客作业

1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。

网桥(Bridge)

    就是个硬件网络协议翻译器,如今交换机也包含这个功能,操作系统也可以是网桥,现在网桥的概念已经淡出

集线器(HUB)

    将网线集中到一起,对收到的信号进行同步整形放大,以扩大传输距离,是中继器的一种形式,信息是通过广播的方式传送的

交换机(Switch)

    是HUB的升级换代产品,在通信系统中自动完成信息交换的设备。它具备自动寻址和交换能力,会根据内存中的地址表对照确定目标MAC的NIC所在端口,通过内部交换矩阵迅速发送到目的端口,若目的MAC不存在,才会用广播的形式。

    二层交换机    

        原理同上,工作于数据链路层

    三层交换机

        在二层基础上,具有部分路由器功能,目的加快大型局域网内部的数据交换,能够实现一次路由,多次转发

路由器(route)

    简单来说是将不同网络之间互相连接一起,实现相互间的通信。路由器构成了Internet的骨架。

    

2、IP地址的分类有哪些?子网掩码的表示形式及其作用

IP地址分为

    A类1.0.0.0到126.255.255.255

    B类128.0.0.0到191.255.255.255

    C类192.0.0.0到223.255.255.255

子网掩码

    4个网段,每个网络数值区间为0~255

    子网掩码的作用将IP地址分成网络地址和主机地址两部分

3、计算机网络的分成模型有哪些(OSI模型和TCP/IP模型),每一层的功能及涉及到的物理设备有哪些

    OSI参考模型        TCP/IP参考模型

    应用层  ———–            

    表示层  ———–

    会话层  ——————   应用层

    传输层  ——————   传输层

    网络层  ——————   网络互联层

    数据链路层 ——–  

    物理层  ——————   主机到网络层

应用层:为操作系统或网络应用程序提供访问网络服务的几口。Telenet、FTP、HTTP、SNMP等

表示层:二进制传输。将会话层的数据或信息变换成一个可以被应用层理解的格式。数据转换包括数据的加密、压缩、格式转换等

会话层:介质访问。会话层管理主机之间的绘画进程,即负责建立、管理、终止进程之间的会话。

传输层:寻址和最短路径。可靠或不可靠传输,TCP、UDP、SPX等。

网络层:端到端的连接。负责对子网间的数据包进行路由选择,还可以实现拥塞控制、网际互连等。IP、IPX、RIP、OSPF等

数据链路层:主机间通信。在不可靠的物理介质上提供可靠的传输。SDLC、HDLC、PPP、STP

物理层:数据表示。物理层规定了激活、维持、关闭通信点之间的机械特性、电气特性、功能特性以及过程特性。

4、如何将Linux主机接入到TCP/IP网络,请描述详细的步骤。(手动指定的方式)

vi /etc/sysconfig/network-scripts/ifcfg-eth0
BOOTPROTO=dhcp
或者
BOOTPROTO=static
IPADDR=为固定IP
NETMASK=子网掩码
GATEWAY=网管

ifup eth0

5、为Linux主机配置网络信息的方式有哪些,请打桩各个过程

vi /etc/sysconfig/network-scripts/ifcfg-eth0

ifconfig eth0 xxx.xxx.xxx.xxx
route add default gw xxx.xxx.xxx.xxx

6、写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间的所有在线状态 

    在线的主机使用绿色显示

    不在线的主机使用红色显示 

[root@llww3317 tmp]# ip add
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
    link/ether 00:0c:29:04:b7:19 brd ff:ff:ff:ff:ff:ff
    inet 192.168.2.107/24 brd 192.168.2.255 scope global eth0
    inet 183.156.202.213/20 brd 183.156.207.255 scope global eth0
    inet6 fe80::20c:29ff:fe04:b719/64 scope link 
       valid_lft forever preferred_lft forever
[root@llww3317 tmp]# cat ping.sh
#!/bin/bash
#
ip="183.156.202."
for i in {1..255};do
if  ping -c 1  $ip$i >/dev/null ;then
 echo -e "$ip$i\t[\033[32;1m Connected \033[0m]"
else
 echo -e "$ip$i\t[\033[31;1m Disconnect \033[0m]"
fi


done

blob.png

7、详细描述每个网络接口的配置文件中各个参数的含义和其所对应的值

DEVICE=eth0                                        //设备名称
TYPE=Ethernet                                      //网卡类型
UUID=7a8bfd73-eea3-4830-b4f8-5840b359c0a8          //网卡的UUID
ONBOOT=yes                                         //是否开机启动
NM_CONTROLLED=yes                                  //修改配置文件后实时生效
BOOTPROTO=dhcp                                     //启动方式,有三种dhcp、static、none
HWADDR=00:0C:29:04:B7:19                           //网卡MAC地址
DEFROUTE=yes                                       //默认路由
PEERDNS=yes                                        //dhcp默认选项,自动修改resolv.conf
PEERROUTES=yes                                     //dhcp默认选项,自动修改路由信息
IPV4_FAILURE_FATAL=yes                             //是否启用IPV4
IPV6INIT=no                                        //是否启用IPV6
NAME="System eth0"                                 //系统名称

8、如何给网络接口配置多个地址,有哪些方式?

vi /etc/sysconfig/network-scripts/ifcfg-eh0                           修改网络配置文件
ip addr add 192.168.1.100/24 dev eth0                        临时添加IP
ifconfig eth0 192.168.10.50 netmask 255.255.255.0                        临时添加IP

9、常用的网络管理类工具有哪些,并用示例形式描述他们的使用方法

ifconfig eth0 192.168.10.50 netmask 255.255.255.0            临时添加IP    

ip addr add 192.168.1.100/24 dev eth0                       临时添加IP

route add default gw 192.168.0.1                             添加默认网关
route add -host 192.168.1.3 gw 172.16.0.1 dev eth0               添加到主机的路由表
route add -net 192.168.0.0/24 gw 172.16.0.1 dev eth0             添加到网络段的路由表

netstat -tan
ss  -tul

CentOS 7
			 		nmcli c modify eth0 ipv4.addresses 172.16.100.12/16
			 		nmcli c down eth0;nmcli c up eth0

10、Linux系统软件包管理方法(安装、升级、卸载等操作)有哪些,以及如何管理的

rpm
    参数: 
        -a 所有包
        -f 指定的文件由哪些程序包生成
        -R 查询指定的程序包的依赖关系
        -q 来查询已安装软件包的数据库
        -i 显示软件包信息,如描述, 发行号, 尺寸, 构建日期, 安装日期, 平台, 以及其它一些各类信息。
        -l 显示软件包中的文件列表
        -e 卸载
        -U 有旧的程序就升级,没有就安装
        -F 有旧的程序就升级,没有就不安装

可以用yum来维护管理        
yum
    参数:
        list 显示程序包
        install 安装
        reinstall 重新安装
        update 升级
        downgrade 降级
        remove 卸载
        info 查看程序包信息

11、如何使用发行版光盘作为yum repository,请描述该过程

vi /etc/yum.repos.d/CentOS-Media.repo  修改enalbe=1,添加cost=500,优先使用cdrom里的资源

name=CentOS-$releasever - Media
baseurl=file:///media/CentOS/
        file:///media/cdrom/
        file:///media/cdrecorder/
gpgcheck=1
enabled=1
cost=500
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

[root@llww3317 tmp]# mkdir /media/cdrom
[root@llww3317 tmp]# createrepo /media/cdrom
[root@llww3317 tmp]# mount /dev/cdrom /media/cdrom
mount: block device /dev/sr0 is write-protected, mounting read-only
[root@llww3317 ~]# yum install tree
已加载插件:fastestmirror, refresh-packagekit, security
设置安装进程
仓库 'c6-media' 在配置文件中未指定名字,使用标识代替
Loading mirror speeds from cached hostfile
 * base: centos.ustc.edu.cn
 * centosplus: mirrors.163.com
 * extras: mirrors.163.com
 * updates: mirrors.163.com
解决依赖关系
--> 执行事务检查
---> Package tree.x86_64 0:1.5.3-3.el6 will be 安装
--> 完成依赖关系计算

依赖关系解决

============================================================================================================================================================================================================
 软件包                                        架构                                            版本                                                 仓库                                               大小
============================================================================================================================================================================================================
正在安装:
 tree                                          x86_64                                          1.5.3-3.el6                                          c6-media                                           36 k

事务概要
============================================================================================================================================================================================================
Install       1 Package(s)

总下载量:36 k
Installed size: 65 k
确定吗?[y/N]:

12、写一个脚本,完成以下功能

    (1)假设某目录(/etc/rc.d/rc3.d/)下分别有K开头的文件和S开头的文件若干

    (2)显示所有以K开头的文件的文件名,并且给其附加一个stop字符串

    (3)显示所有以S开头的文件的文件名,并且给其附加一个start字符串

    (4)分别统计S开头和K开头的文件各有多少

[root@llww3317 tmp]# cat 12.sh
#!/bin/bash
#
S=0
K=0
for i in $( ls /etc/rc.d/rc3.d/K*|egrep -o "[^/]*$");do
        echo "$i stop"
let     K+=1
done
for i in $( ls /etc/rc.d/rc3.d/S*|egrep -o "[^/]*$");do
        echo "$i start"
let     S+=1
done
echo "K:$K,S:$S"
[root@llww3317 tmp]# bash 12.sh
K01smartd stop
K02oddjobd stop
K05wdaemon stop
K10psacct stop
K10saslauthd stop
K15htcacheclean stop
K15httpd stop
K30spice-vdagentd stop
K50dnsmasq stop
K50kdump stop
K60nfs stop
K61nfs-rdma stop
K69rpcsvcgssd stop
K73winbind stop
K74ntpd stop
K75ntpdate stop
K75quota_nld stop
K76ypbind stop
K83named stop
K84wpa_supplicant stop
K87restorecond stop
K88sssd stop
K89netconsole stop
K89rdisc stop
K92pppoe-server stop
K95firstboot stop
K95rdma stop
K99rngd stop
S01sysstat start
S02lvm2-monitor start
S08ip6tables start
S08iptables start
S10network start
S11auditd start
S11portreserve start
S12rsyslog start
S13cpuspeed start
S13irqbalance start
S13rpcbind start
S15mdmonitor start
S22messagebus start
S23NetworkManager start
S24nfslock start
S24rpcgssd start
S25blk-availability start
S25cups start
S25netfs start
S26acpid start
S26haldaemon start
S26udev-post start
S28autofs start
S50bluetooth start
S55sshd start
S80postfix start
S82abrt-ccpp start
S82abrtd start
S90crond start
S95atd start
S99certmonger start
S99local start
K:28,S:32

13、写一个脚本,完成以下功能

    (1)脚本能接受用户名作为参数

    (2)计算此些用户的ID之和 

#!/bin/bash
#
sum=0
function user_sum {
echo -n "Enter user:    "
read name
if [ $name = "exit" ];then
exit 0
else
if id $name &>/dev/null;then
let sum+=$(cat /etc/passwd|grep ^$name|cut -d: -f3)
echo $sum
user_sum
else
echo "retry input user"
user_sum
fi
fi

}

user_sum
[root@llww3317 tmp]# bash 13.sh
Enter user:    root
0
Enter user:    namd
retry input user
Enter user:    named
25
Enter user:    magedu
525
Enter user:    exit

14、写一个脚本

    (1)传递一些目录给此脚本

    (2)逐个显示每个目录的所有一级文件或子目录的内容类型

    (3)统计一共有多少个目录,且一共显示了多少个文件的内容类型

[root@llww3317 tmp]# more 14.sh
#!/bin/bash
#
d=0
f=0
for i in $*;do
if [ -d $i ];then
  for j in `ls $i`;do
        if [ -d $i/$j ];then
          let d+=1
        elif [ -f $i/$j ];then
          let f+=1
        fi
done
fi
done
echo "sum_directory:$d,sum_files:$f"
[root@llww3317 tmp]# bash 14.sh /etc
sum_directory:124,sum_files:133
[root@llww3317 tmp]# bash 14.sh /etc /tmp
sum_directory:125,sum_files:134

15、写一个脚本

    通过命令行传递一个参数给脚本,参数为用户名

    如果用户的ID号大于等于500,则显示此用户为普通用户

#!/bin/bash
#
if id $1 &>/dev/null;then
if [  $(id -u $1) -ge 500 ];then
echo "normal user"
fi
fi
[root@llww3317 tmp]# bash 15.sh magedu
normal user

16、写一个脚本

    (1)添加10用户user1-user10,密码同用户名

    (2)用户不存在时才添加,存在时则跳过

     (3)最后显示本次共添加了多少用户

[root@llww3317 tmp]# more 16.sh
#!/bin/bash
#
sum=0
for i in {1..10};do
id user$i &>/dev/null
if [ $? -ne 0 ];then 
        useradd user$i
        echo "user$i"|passwd --stdin user$i >/dev/null
        let sum+=1
fi
done
echo "useradd:$sum"
[root@llww3317 tmp]# bash 16.sh
useradd:10

18、打印九九乘法表

#!/bin/bash
#
for i in {1..9};do
  for j in $(seq 1 $i);do
        echo -ne "$j*$i=$((i*j))\t"

  done
echo -ne "\n"
done
1*1=1
1*2=2   2*2=4
1*3=3   2*3=6   3*3=9
1*4=4   2*4=8   3*4=12  4*4=16
1*5=5   2*5=10  3*5=15  4*5=20  5*5=25
1*6=6   2*6=12  3*6=18  4*6=24  5*6=30  6*6=36
1*7=7   2*7=14  3*7=21  4*7=28  5*7=35  6*7=42  7*7=49
1*8=8   2*8=16  3*8=24  4*8=32  5*8=40  6*8=48  7*8=56  8*8=64
1*9=9   2*9=18  3*9=27  4*9=36  5*9=45  6*9=54  7*9=63  8*9=72  9*9=81

原创文章,作者:laiwen2007,如若转载,请注明出处:http://www.178linux.com/27277

(0)
laiwen2007laiwen2007
上一篇 2016-08-08
下一篇 2016-08-08

相关推荐

  • keepalive配置文件详解

    第一部分:全局定义块 1、email通知。作用:有故障,发邮件报警。 2、Lvs负载均衡器标识(lvs_id)。在一个网络内,它应该是唯一的。 3、花括号“{}”。用来分隔定义块,因此必须成对出现。如果写漏了,keepalived运行时,不会得到预期的结果。由于定义块内存在嵌套关系,因此很容易遗漏结尾处的花括号,这点要特别注意。 global_defs{ n…

    2017-09-17
  • linux第一天,不正经的感想

    课是正经课,人正不正经就不知道了

    2018-03-26
  • 计算机组成及Linux初识

    拼一载春秋,搏一生无悔 1. 计算机简介 2. Linux发行版简介 3. Linux哲学思想简介 4. Linux系统上获取命令帮助 5. Linux「12」个基础命令简介 6. Linux发行版基础目录及功能简介 1.计算机简介 电子计算机(英语:computer),亦称电脑,是一种利用「电子学…

    Linux干货 2016-10-27
  • NET25第8周作业

    1、写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间的所有主机的在线状态;     在线的主机使用绿色显示;     不在线的主使用红色显示; #!/bin/bashtrap “echo ‘crtrl+c’;exi…

    Linux干货 2017-03-15
  • 计算机基础

    计算机基础与linux的常用命令

    2018-04-01
  • 第二周练习题

    创建/tmp目录下的:a_c,a_d,b_c,b_d; ~]# mkdir -pv /tmp/{a_{c,d},b_{c,d}} 创建如下目录: ~]# mkdir -pv /tmp/mylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-scripts},lib/modules,…

    Linux干货 2016-11-01

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-12 14:13

    写的很好,排版也很棒,加油