前言

只有光头才能变强

回顾前面:

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

这篇主要讲解在Linux下网络的管理

那么接下来就开始吧,如果文章有错误的地方请大家多多包涵,不吝在评论区指正哦~

声明:基于Centos6.9

一、Linux下的网络

Linux支持各种协议类型的网络

  • TCP/IP、NetBIOS/NetBEUI、IPX/SPX、AppleTake等
  • 在网络底层也支持Ethernet、Token Ring、ATM、PPP(PPPoE)、FDDI、Frame Relay等网络协议。
  • 这些网络协议是Linux内核提供的功能,具体的支持情况由内核编译参数决定。

Linux网络管理 Linux 第1张

配置网络参数有两种方式:

  • 临时性网络配置
    • 通过命令修改当前内核中的网络相关参数实现,配置后立即生效,重新开机后失效
  • 永久性网络配置
    • 通过直接修改网络相关的配置文件实现,需要重启服务,重新开机后保留所有配置

在Linux下配置网络,总会遇到桥接和NAT模式的概念的,这里我简要摘抄一下:

  • 桥接模式的虚拟机,就像一个在路由器"民政局"那里"上过户口"的成年人,有自己单独的居住地址,虽然和主机住在同一个大院里,但好歹是有户口的人,可以大摇大摆地直接和外面通信。
  • NAT模式的虚拟机,纯粹就是一个没上过户口的黑户,路由器"民政局"根本不知道有这么个人,自然也不会主动和它通信。即使虚拟机偶尔要向外面发送点的信件,都得交给主机以主机的名义转发出去,主机还专门请了一位叫做NAT的老大爷来专门负责这些虚拟机的发信、收信事宜。
  • 仅主机模式的虚拟机,纯粹是一个彻彻底底的黑奴,不仅没有户口、路由器"民政局"不知道这么号人,还被主机关在小黑屋里,连信件也不准往外发。

参考资料:

1.1常用的管理网络命令

网络接口相关

  • 查看网络接口配置:ifconfig [ethX]
  • 网络接口的启用与停用:使用 ifup ethX 命令来启用指定的接口,使用 ifdown ethX 命令来禁用指定的接口

临时配置相关

  • ifconfig命令可以临时地设置网络接口的IP参数
  • route命令可以临时地设置内核路由表
  • 使用hostname命令可以临时地修改主机名
  • 使用sysctl命令可以临时地开启内核的包转发

使用命令来做网络的临时配置,要做到永久配置就需要直接修改文件的方式了!

Linux网络管理 Linux 第2张

网络检测的常用工具:

  • ifconfig 检测网络接口配置
  • route 检测路由配置
  • ping 检测网络连通性
  • netstat 查看网络状态
  • lsof 查看指定IP 和/或 端口的进程的当前运行情况
  • host/dig/nslookup 检测DNS解析
  • traceroute 检测到目的主机所经过的路由器
  • tcpdump 显示本机网络流量的状态

1.1配置Linux网络练习题

检查windows的virtualbox虚拟网卡是否禁用,如果禁用,请启动;以root账户登录,用ifconfig检查当前网络配置;然后分别用ifup命令启动eth0网卡和eth1网卡,观察结果,并记录网卡绑定的ip地址,在第五部分记录。关闭检查防火墙的状态,如果防火墙已启动,请关闭linux系统的防火墙,

Linux网络管理 Linux 第3张

Linux网络管理 Linux 第4张

Linux网络管理 Linux 第5张

Linux网络管理 Linux 第6张

Linux网络管理 Linux 第7张

启动putty,在Host Name输入框中输入eth1网卡当前的ip地址,connection type 选择SSH,Port为22;按“open”按钮,提示Putty Security Alert对话框,选择确定;分别以root账户,jkXX账户登录

Linux网络管理 Linux 第8张

Linux网络管理 Linux 第9张

Linux网络管理 Linux 第10张

在root账户登录的putty终端上查看(ps au)当前用户运行的进程,找到jk08账户运行的shell程序的pid,并且在第五部分记录。在root账户登录的putty终端上,用kill命令杀死刚才记录的shell程序;

Linux网络管理 Linux 第11张

Linux网络管理 Linux 第12张

Linux网络管理 Linux 第13张

杀死一个进程需要什么条件?如果是peter账户,是否可以杀死jason账户运行的进程?

答:杀死一个进程,应获得这个进程控制的权利,比如获得进程所属账户的权限;或者获得超级账户的权限。如果是peter账户,没有获得jason账户的权限,因此,杀死jason账户下运行的进程是被禁止的。

用路由命令查看当前网络路由状况,并用ping命令测试外部网站地址是否可以连通;并截图

Linux网络管理 Linux 第14张

Linux网络管理 Linux 第15张

Linux网络管理 Linux 第16张

用ifconfig查看eth0的当前ip地址;修改ip地址,地址的最后一段数字比原来的大1,查看是否成功;用ifconfig修改eth0的地址,要求指定掩码和广播地址,其中掩码为B类地址掩码;用路由命令观察路由表的变化;

Linux网络管理 Linux 第17张

Linux网络管理 Linux 第18张

Linux网络管理 Linux 第19张

在eth1网卡上添加一个主机路由,要求其主机ip地址为192.168.3.3;在eth0网卡上添加一个网络路由,网络地址为10.20.0.0,掩码是255.255.0.0;观察路由表中的默认路由,根据步骤(2)观察到的默认路由,恢复默认网关路由,并测试网络与外部网站的连通性;

Linux网络管理 Linux 第20张

Linux网络管理 Linux 第21张

Linux网络管理 Linux 第22张

Linux网络管理 Linux 第23张

Linux网络管理 Linux 第24张

给网卡eth1设置别名eth1:0,ip地址比eth1的ip地址最后一段数字大1;从windows端,用ping命令测试eth1和eth1:0的连通性;停止eth1:0工作,观察结果,并截图

Linux网络管理 Linux 第25张

Linux网络管理 Linux 第26张

Linux网络管理 Linux 第27张

修该主机名称为serverXX(XX为学生学号末两位),退出shell重新登录;观察内核参数net.ipv4.ip_forward的值,将其修改为1;

Linux网络管理 Linux 第28张

Linux网络管理 Linux 第29张

为什么默认路由记录不见了,可能的原因是?

答:修改了默认路由经过的网卡eth0的ip地址,对原有路由影响较大,因此系统自动将默认路由删除。

一个网卡有多个IP地址有什么好处?

答:好处是有利于在一个网卡上绑定多个相同的网络服务,比如可以绑定多个网站。

编辑eth0和eth1的网络接口文件,要求修改为启动时自动启动设备;并且要求eth1的地址为192.168.56.121,网络前缀为26;系统重启,检验网卡是否自动启动,及其IP地址;

Linux网络管理 Linux 第30张

Linux网络管理 Linux 第31张

Linux网络管理 Linux 第32张

Linux网络管理 Linux 第33张

编辑本地域名解析配置文件,要求添加10.0.2.2地址,对应的域名为gateXX(其中XX为学生学号的末两位),存盘退出;执行ping命令,参数为gateXX,检查通过域名是否可以连通对应的ip地址;

Linux网络管理 Linux 第34张

Linux网络管理 Linux 第35张

编辑文件,使得系统支持ip包转发;用sysctl -p命令让修改结果生效;

Linux网络管理 Linux 第36张

Linux网络管理 Linux 第37张

Linux网络管理 Linux 第38张

用ping命令测试网站www.qq.com,要求只发送10次ICMP测试包;用netstat命令观察网络接口信息;用netstat命令观察路由表信息;用netstat命令观察正在监听的tcp端口;用netstat命令观察正在监听的udp端口;

Linux网络管理 Linux 第39张

Linux网络管理 Linux 第40张

Linux网络管理 Linux 第41张

Linux网络管理 Linux 第42张

Linux网络管理 Linux 第43张

sysctl -p看到的是配置文件中的数据,还是内存中的数据?

答:看到的既是配置文件中的数据,也是内存中的数据。因为-p参数的意思是把配置文件中的数据更新到内存中。

二、安装软件

一般我们的Centos下安装软件可以直接使用yum命令来安装,非常方便。在yum之前还有一个RPM,来看看它的区别:

  • rpm是由红帽公司开发的软件包管理方式,使用rpm我们可以方便的进行软件的安装、查询、卸载、升级等工作。但是rpm软件包之间的依赖性问题往往会很繁琐,尤其是软件由多个rpm包组成时。
  • Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。

2.1yum使用


yum  [全局参数] 命令 [命令参数]

Linux网络管理 Linux 第44张

常用的全局参数:

  • -y:对yum命令的提问回答“是(yes)”
  • -C:只利用本地缓存,不从远程仓库下载文件
  • --enablerepo=REPO:临时启用指定的名为REPO的仓库
  • --disablerepo=REPO:临时禁用指定的名为REPO的仓库
  • --installlroot=PATH:指定安装软件时的根目录,主要用于为chroot环境安装软件

Linux网络管理 Linux 第45张

Linux网络管理 Linux 第46张

2.2几种常用的网络工具

Linux网络管理 Linux 第47张

Linux网络管理 Linux 第48张

2.3练习yum安装软件与使用

用yum查找软件包tree,lsof,traceroute,观察结果;查找tree软件包的基本信息;安装tree,lsof,traceroute三个软件包

Linux网络管理 Linux 第49张

Linux网络管理 Linux 第50张

Linux网络管理 Linux 第51张

Linux网络管理 Linux 第52张

Linux网络管理 Linux 第53张

Linux网络管理 Linux 第54张

Linux网络管理 Linux 第55张

Linux网络管理 Linux 第56张

Linux网络管理 Linux 第57张

Linux网络管理 Linux 第58张

运行命令tree,查看/etc目录下的子目录情况;运行lsof查看使用网络tcp端口22的是哪个应用;用traceroute命令观察某个网站经过了多少个路由

Linux网络管理 Linux 第59张

Linux网络管理 Linux 第60张

Linux网络管理 Linux 第61张

Linux网络管理 Linux 第62张

Linux网络管理 Linux 第63张

用浏览器打开网站http://www.rpmfind.net,分别查找软件包system-config-network-tui, tree, ntsysv,找到软件包,并复制下载链接;在linux中用wget下载链接,成功下载后,用长格式列出该文件

Linux网络管理 Linux 第64张

Linux网络管理 Linux 第65张

Linux网络管理 Linux 第66张

Linux网络管理 Linux 第67张

Linux网络管理 Linux 第68张

Linux网络管理 Linux 第69张

Linux网络管理 Linux 第70张

Linux网络管理 Linux 第71张

用rpm工具查看所有已经安装的软件包,并将结果输出到文件installXX.txt,其中(XX为学生学号末两位);用rpm查看bash的软件包信息;用rpm查看安装包文件的数字签名信息;

Linux网络管理 Linux 第72张

Linux网络管理 Linux 第73张

Linux网络管理 Linux 第74张

使用rpm分别安装第2步下载的三个软件包;它们都能顺利安装吗?为什么会出错;观察结果,

Linux网络管理 Linux 第75张

Linux网络管理 Linux 第76张

Linux网络管理 Linux 第77张

Linux网络管理 Linux 第78张

哪个软件包不能顺利安装,为什么?应该怎样安装该软件?

答:system-config-network-tui-1.6.0.el6.3-4.el6.noarch.rpm软件包不能顺利安装,因为这个软件包依赖其他软件包,应把依赖的软件包先安装,才能安装这个软件包。可以yum工具安装,它可以自动安装依赖的软件包。

四、总结

本文主要是总结了Linux下网络和安装软件的知识~~~这两个知识点在Linux下也是很重要的,是学习Linux的基础~

继续完善上一次的思维导图

Linux网络管理 Linux 第79张

如果文章有错的地方欢迎指正,大家互相交流。习惯在微信看技术文章,想要获取更多的Java资源的同学,可以关注微信公众号:Java3y。为了大家方便,刚新建了一下qq群:742919422,大家也可以去交流交流。谢谢支持了!希望能多介绍给其他有需要的朋友

文章的目录导航

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄