linux网络管理

简介:
+关注继续查看

  不联网的计算机就是废铁,管理linux也必须懂得网络,但是网络是一门特别大的学科,其中的原理和规范可以编写三本书。学习linux之前总不能先去考个CCNA再学习吧!不学的话那必须对网络有一定的认识懂得linux中的网络管理,了解基本的网络运作原理。

一 物理设备

  早期网络有多种拓扑结构,现在已经被淘汰了,只要了解它们的类型和大致的优缺点就好。星形拓扑,使用中间设备进行信号中继,中心节点单点故障对对全局影响明显;环形拓扑,使用令牌环,每个设备的损坏对全局都有特别大的影响;总线型拓扑,对中心线要求比较高;网状拓扑,特别耗费资源主要耗费线材;半网状拓扑,也就是当今世界使用的网络拓扑,不仅省了线材还最大程度上保证网络的联通性,当然这只是高层网络,底层大多是星形拓扑。

  物理设备主要有三种

  集线器hub:连接在集线器上的主机,在同一个冲突域,也在一个广播域内,其内部结构类似总线。冲突域:所有主机连接到一根网线上,这时在这个网线上只能有一个主机发信号,多个主机一起发信号就会导致这跟网线上的信息。一个主机发出信号,在这个网线上的所有主机都会收到,这就是广播。

  交换机switch:连接在交换机上的主机,不在同一个冲突域,在一个广播域内。交换机内部很复杂,主要是功能是:主机把数据发送给交换机时,交换机会把数据先自己保存然后转发给所有主机。这时多个主机可以同时发送信息了,解决了冲突。

  路由router:可以实现信息选择性的发送给其他设备,解决了广播。

二 网络协议

  网络的协议有两个规范,为什么是两个?因为有一个国际规范osi参考模型,这个规范为了把多种网络同一起来设计了一个七层模型,但是实际生产中人们发现另一种四层模型不仅简单而且高效的利用网络,导致规范出了两个。

  两个规范的对比情况:

wKioL1g_x1OxzAYSAAA7Z9U-xMI329.png-wh_50

  这里只说四层网络协议:

网际层:这一层很基础,主要是实现电气信息和数字信息的转换和个主机识别,主机间识别主要是使用这一层的mac

网络层:这一层有著名的ip协议实现主机通信。

传输层:tcpudp。主要是实现进程间通信,这才是重点,真正需要通信的不是主机,而是运行在主机上的进程。tcp三次握手,seq作为发送,ack作为响应。四次断开,因为通信是全双工的。

应用层:http超文本传输协议,ftp等等。

  判断网络的工具:

1
2
3
4
5
6
7
ping检测网络的连通性,使用的是icmp协议
    -s    指定包的大小
    -c    指定发送包的数量
    -w    指定等待的时间
    -I      指定发送包的接口
    ping的结果中ttl=初始值-经过的路由数(linux的初始值是64,windows是128)
    tracepath可以查看包经过的路由。
1
2
3
4
5
6
7
8
9
10
ss命令:
    -t          tcp协议的通信
    -u          udp协议的通信
    -w           raw socket通信
    -x          unix socket通信
    -n          以数字的形式显示
    -l          listen状态的
    -a          所有状态
    -p          显示pid
    -e          显示扩展信息

三 linux网络管理命令

  网络管理在centos67使用的工具不一样,在7里使用的工具虽然6里面也有但是兼容性和稳定性不太好。

1网络状况查看的命令

1
2
3
4
5
top动态的查看网络状况
htop比top更好看
glances信息比较全的实时查看网络的工具
dstat实时监控系统各种状况的总计
等等


2 centos临时管理网络命令

1
2
3
ifconfig IFACE IP/netmask [up]
给IFACE指定ip,也可以给IFACE的一个别名指定ip,这样一个网卡就可以拥有多个ip
router add [-net|-host] target [netmask Nm][gw Gw] [[dev] If]

给某个ip增加路由示例:route add default gw 172.16.0.1

1
2
3
4
5
6
7
router –n 显示路由信息
以上是古老的网络查看管理命令,目前ip命令正在逐步取代上面这两个命令。
ip addr add|change|del|flush
       ip管理命令,使用tab补全,可以快速的管理|
note:ip可以让一个网卡同时拥有多个ip并且不是有别名
ip router 。。。
       路由管理命令


3 centos6的网络管理

  NetworkManager可以直接更改配置文件,但centos6中的NetworkManager不是很稳定一般都是关掉。由此,更改网络后要想让网络永久生效就需要更改网卡的配置文件。

centos配置文件位于/etc/sysconfig/network-scripts/目录下,以ifcfg-开头。

配置文件格式

1
2
3
4
5
6
7
8
DEVICE           设备名
BOOTPROTO       获取ip的方式dhcp、static等等
ONBOOT           开机时启动
IPADDR           ip地址
PREFIX|NETMASK     掩码位数或直接指定掩码
GATEWAY           指定网关
DNS1          指定dns服务器
等等


  很多公司的服务都是很重要的必须保证99.9%的在线时间,这时一个网卡换掉导致服务挂掉将是一大笔损失。一个网卡不能满足需求,这时我们可以使用两个网卡同时工作甚至更多。这需要使用bongdingbongding机制是使用linux内的bongding模块实现的。bonding有多种工作模式:1Mode 0 (balance-rr)2Mode 1 (active-backup)3Mode 3 (broadcast)

导入bonding模块的      modprobe bonding

  编辑配置文件/etc/sysconfig/network-scripts/ifcfg-bond0

1
2
3
DEVICE=bond0
BOOTPROTO=none
BONDING_OPTS= “miimon=100 mode=0”

编辑辅网卡的配置文件/etc/sysconfig/network-scripts/ifcfg-eth0

1
2
3
4
5
DEVICE=eth0
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
USERCTL=no

       使bongding永久生效需要更改更改配置文件

1
2
3
vim /etc/modprobe.d/bond.conf
alias bond0 bonding
options bond0 miimon=100 mode=0   #使用这一行的时候就不用在bond0的配置文件中使用BONDING_OPTS= “miimon=100 mode=0”了。


4 centos7的网络管理

  centos7里可以直接使用NetworkManager的管理命令nmclinmcli命令很简单,连击tab就可以补全和ip的使用类似。使用cmcli配置的网卡的信息,最好使用ip命令查看。nmcli可以支持多个配置文件同时存在,但是只能使用一个。它的配置文件和6的进本类似只是可以指定多个ip

IPADDR

IPADDR1

centos7使用网络组实现类似centos6bonding。使用网络组的命令集合如下:

1
nmclicon add type team con-name team0 ifname team0 config ‘{"runner":{"name":"loadbalance"}}' ipv4.addresses 192.168.1.100/24 ipv4.methodmanual

这条是命令是生成team0网卡并配置网卡

1
nmcli con add con-name team0-eth1 typeteamslave ifname eth1 master team0

eth1加入team0

1
nmcli con add con-name team0-eth2 typeteamslave ifname eth2 master team0

eth2加入team0

1
2
3
nmcli con up team0
nmcli con up team0-eth1
nmcli con up team0-eth2

启动三个网卡

1
2
teamdctl team0 state      查看组情况
nmcli dev dis eth1      停止eth1测试


总结

  网络知识虽然很多,但是运维人员需要接触的不是很多,bonding和网络组基本上是由机房人员实现的。机器网卡一旦出了问题,只能机房那一会的人员处理完问题后,才是运维上的时候。运维主要要了解网络的基本原理,了解网卡组网的原理。

  真正需要熟练使用的是网络的配置,ip,掩码,网关,路由。还有就是查看网络情况的命令,第一时间判断问题的出处。






      本文转自Ailu0li 51CTO博客,原文链接:http://blog.51cto.com/oldking/1878485,如需转载请自行联系原作者





相关文章
|
3月前
|
网络协议 Linux 数据安全/隐私保护
Linux网络管理OSI和TCP/IP
本篇文章不教大家命令了,开始学一些理论知识吧,本篇文章分享一下网络管理知识:OSI和TCP/IP,并且学习两者之间的区别。
46 1
|
3月前
|
存储 域名解析 网络协议
Linux网络管理
这篇文章开始学习Linux的网络管理,通过这篇文章带大家了解,怎么在Linux中查看自己的网卡,怎么通过配置文件配置自己的网络、IP,以及怎么查看自己的IP,了解获取IP的方式,最后完成一个服务器的初始化。
61 1
|
3月前
|
存储 缓存 运维
Linux运维:网络管理
Linux运维:网络管理
155 0
|
4月前
|
存储 缓存 监控
大数据开发基础的Linux系统的常用系统和网络管理
当今世界正处于信息化时代,数据量不断增长。随着数据的庞大,对于数据处理和管理的需求也越来越高。在这个背景下,大数据开发成为了一个非常热门的领域。而Linux系统是大数据开发的重要基础之一。本文将介绍Linux系统的常用系统和网络管理。
54 0
|
7月前
|
数据可视化 网络协议 Linux
Linux 温习(五): 网络管理
在早期的 Linux 系统中,网卡被命名为 eth0、eth1 、eth2 等,但往往不一定准确对应网卡接口的物理顺序。
96 0
|
8月前
|
网络协议 Linux
Linux操作系统:基础篇7基本功能之网络管理
Linux网络配置 Linux的网络配置依靠命令和配置文件来完成,熟练的掌握网络命令和配置文件的用法,就可以对网络相关的部分进行有效管理。
171 0
Linux操作系统:基础篇7基本功能之网络管理
|
缓存 网络协议 Linux
Linux网络管理之arp命令 – 操纵系统arp缓存(地址解析协议)
arp命令的英文全拼“Address Resolution Protocol” 。该命令用于操作主机的arp缓存,它可以显示arp缓存中的所有条目、删除指定的条目或者添加静态的ip地址与MAC地址对应关系。
200 0
Linux网络管理之arp命令 – 操纵系统arp缓存(地址解析协议)
|
Linux
Linux网络管理之网卡、网络接口开关设置
ifup命令用于激活指定的网络接口。ifup命令会去读取/etc/sysconfig/network-scripts/目录下的相关网络接口的配置文件,并根据配置文件的内容来激活该网络接口。
152 0
Linux网络管理之网卡、网络接口开关设置
|
机器学习/深度学习 网络协议 Linux
Linux网络管理之tcpdump命令 – 监听网络流量
tcpdump命令是一款sniffer工具,是linux上的抓包工具,嗅探器;它可以打印出所有经过网络接口的数据包的头信息。
203 0
Linux网络管理之tcpdump命令 – 监听网络流量
|
缓存 网络协议 Linux
Linux网络管理之route命令 – 显示并设置路由
route命令用来显示并设置linux内核中的网络路由表,route命令设置的路由主要是静态路由。要实现两个不同的子网之间的通信,需要一台连接两个网络的路由器,或者同时位于两个网络的网关来实现。
170 0
Linux网络管理之route命令 – 显示并设置路由
相关产品
云迁移中心
推荐文章
更多