Linux网络管理-阿里云开发者社区

开发者社区> java3y> 正文

Linux网络管理

简介: 前言 只有光头才能变强 回顾前面: 看完这篇Linux基本的操作就会了 Linux用户和权限管理看了你就会用啦 Linux进程管理 这篇主要讲解在Linux下网络的管理。 那么接下来就开始吧,如果文章有错误的地方请大家多多包涵,不吝在评论区指正哦~ 声明:基于Centos6.9 一、Linux下的网络 Linux支持各种协议类型的网络 TCP/IP、NetBIOS/NetBEUI、IPX/SPX、AppleTake等 在网络底层也支持Ethernet、Token Ring、ATM、PPP(PPPoE)、FDDI、Frame Relay等网络协议。
+关注继续查看

前言

只有光头才能变强

回顾前面:

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

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

声明:基于Centos6.9

一、Linux下的网络

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

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

img_769c6343b564e59d2428a84758cc0dbd.png

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

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

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

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

参考资料:

1.1常用的管理网络命令

网络接口相关

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

临时配置相关

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

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

img_4fe8d2069573395d55e18284db55846b.png

网络检测的常用工具:

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

1.1配置Linux网络练习题

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

img_909a089a4d3fe111ee61d5e745b0b70d.png

img_b936704e2fad6d8c7c10989341075660.png

img_4c20ce455c5839b8feea71d0bddca905.png

img_d6c145540ca670fccb06e96d633cdeb3.png

img_31cb72a3d0dfabbf388c5c16a2d87a8c.png

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

img_a81194ec347d52af6f138d824e18240e.png

img_6ad9e45758dcb41f9342d4702914529d.png

img_fd6ceff6bde0df92e9b567150818e8a4.png

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

img_5be45978b97c2503af0c00576d67b8d5.png

img_2561b28cd8364985d8c9f71cacab394b.png

img_454f52ffa99574d2c46794fca20831e4.png

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

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

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

img_410eb29654c0ccb6bde7d16cb43edb3d.png

img_be78bb75fc4b6c9b4b586ac89684c217.png

img_a7ae93fda6fa1692f7ccd52a009065d3.png

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

img_104bbf56c2e417111edcb0b19a6020ca.png

img_1fb7cbd72b74377d61191b40fcad25ee.png

img_9cf27f52c7291664f68720532019221c.png

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

img_5587f4954c91b160bb576c4b516cc950.png

img_26a7325ef14f9b25c282f6afe1f3688f.png

img_033f22ebf6cedf7031cbd28c9cbc6aba.png

img_14b9e6da3c98e403308bb94cc151189e.png

img_78c8150c150dc3f64111e6e57b7fa2cc.png

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

img_6efb2e19752546a741051c72f7ceab6f.png

img_730e0a5a5d35bf8e8b810fa42402862b.png

img_10be4a0bde8362a78215176360d26f3a.png

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

img_1bccd5196101a29dda6d3360f44acdbe.png

img_ea7b40924436322a2d475d22b1ab89ef.png

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

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

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

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

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

img_8dd162437303bb5eb27b1b76ee8c4e5d.png

img_119b7920a8677f77ee5071855aa92805.png

img_872d641e4ae92b3cbed79bba225ee158.png

img_f599b892b79e7d0f6b6557120d61005a.png

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

img_4d3f2f5c3fc5990d4dfac6158900ee94.png

img_3570f717dc87b783b9af7262afc17ed0.png

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

img_0b0630162d9492ba44099252b19068e8.png

img_93857e3e1483e8293977253648f74f5c.png

img_97b29336ddd8347b6a7c0b17566fcdfb.png

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

img_27e0f05397e9e561488a28b2176bbd5b.png

img_a9a68ca461cf41bb022683ecdb8cd0cb.png

img_5a931efe3d5ce5d7151445d80ccd4214.png

img_629c55c559d6a32d475b973c7aca95e0.png

img_a954dd8273cc518a34129ebadd6f4fc8.png

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  [全局参数] 命令 [命令参数]

img_a99f3398205299bc79ea78a98b611fd3.png

常用的全局参数:

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

img_b5d8ee5a29690d041cd84c19b182455c.png

img_f7090e9fa9a4385fc7eda35842bc7a9a.png

2.2几种常用的网络工具

img_77f8e9b7e986da90f635f64190cbf845.png

img_360e863e8eb97433c25545cb524b8ea5.png

2.3练习yum安装软件与使用

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

img_480f711d89a105770a5f7a34e57d3e4d.png

img_69440832267c33c60070d01a2987c927.png

img_e82906c8a65cafed4ea7114aa92cd54b.png

img_e80e0bddc300d67d8f94415a69a4aeef.png

img_bbfbd4ac94cf30cc1bb6803fcc643321.png

img_d8518eb9b2184dbb5dcae53c79ec3726.png

img_5b0ef00263a2f78cb963b610468c1aca.png

img_89a57a186a6bbd1af3499fb5ee7d2ab1.png

img_6cc5055d16b91c66ccf91c38865a3292.png

img_fa32a229b394f738b6f5d0f7d4d6b2fc.png

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

img_cff5712e5f449e6fbc5e7996530f40df.png

img_08a840af02adf0c657171aa2fb4b7b5e.png

img_db18b6cde576b435d5ed10dc5290aa59.png

img_66bc2f75b0766ad41f1b8dbab1a1db0e.png

img_089a0097764517c8b5c9617a9582e89d.png

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

img_e3eaf5b3a2b2961cf4b94e9113c49b23.png

img_84a80de63d9175613abae4b8f8762492.png

img_f29ef528ecf30f4e83252881eadef585.png

img_441085a22dc77a9f237381903d6fe309.png

img_d9ee6e15d31be254816815099f412644.png

img_4b49a6e13b378a3b62db4ac61afc5579.png

img_79c3cf483908f54cd3d426e4fe4028f4.png

img_12d6b7ede1da7bf46eba3b24c3e50c1b.png

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

img_751386a3d10bda930dbb0d3783e5be6a.png

img_03f3fb3c2a30b033493e4af08fdfd0a2.png

img_6aa69c7cadc26bf1241b025ffcb82fa1.png

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

img_326c6d8aa484e7aeb19009e39c3c3c26.png

img_7815ecc6c141a78e6e4a0a9dbaf2a68a.png

img_fb8df06eeaea76027401f9876ea82bf1.png

img_a730bba83047cafa80221218d9879a2c.png

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

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

四、总结

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

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

img_4c5a2e25068b8b92a754604a19e19014.png

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

文章的目录导航

更多的文章可往:文章的目录导航

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
怎么设置阿里云服务器安全组?阿里云安全组规则详细解说
阿里云服务器安全组设置规则分享,阿里云服务器安全组如何放行端口设置教程
6673 0
linux进程管理
一、概述   何时运行以及运行多久是进程调度的基本责任。   linux 调度算法提供抢占式多任务,支持多处理器,处理器亲和性(processor affinity)、非一致内存访问(nonunifrom memory access 即NUMA)配置,多线程、实时进程已经用户提供优先级(user...
682 0
使用OpenApi弹性释放和设置云服务器ECS释放
云服务器ECS的一个重要特性就是按需创建资源。您可以在业务高峰期按需弹性的自定义规则进行资源创建,在完成业务计算的时候释放资源。本篇将提供几个Tips帮助您更加容易和自动化的完成云服务器的释放和弹性设置。
7690 0
设置windows网络连接别名和linux网络连接别名
windows网络连接别名 C:\Windows\System32\drivers\etc目录下的hosts文件中添加 127.0.0.1 localhost 192.168.1.100 proxy.
663 0
+关注
java3y
公众号:Java3y。文章导航:https://github.com/ZhongFuCheng3y
92
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载