来自<<跟老男孩学Linux运维:核心系统命令实战>>一书
前言
第1章 Linux命令行简介 / 1
①1Linux命令行概述 / 1
关机:
shutdown -h now
halt
init 0
ifup eth0
ifdown eth0
service network restart(/etc/init.d/network restart) 激活整个网络,所有网卡.
top命令
在linux中查看arp地址解析协议需要使用终端命令.
以Deepin linux为例,使用终端命令查看arp步骤如下所示:
关于LVS负载均衡
第一段:什么是负载均衡:
? 负载均衡集群提供了一种廉价、有效、透明的方法,来扩展网络设备和
服务器的负载、带宽、增加吞吐量、加强网络数据处理能力,提高网络的灵活性
和可用性.
第二段:搭建负载均衡服务的需求:
①.)把单台计算机无法承受的大规模的并发访问或者数据流量分担到多台节点设备上
分别处理,减少用户等待响应的时间,提升用户体验.
将结果汇总,返回给用户,系统处理能力得到大幅度提升.
第三段:LVS的介绍:
? LVS是Linux Virtual Server的简写,即Linux虚拟服务器,是一个虚拟的服务器
集群系统,可以在UNIX/LINUX平台下实现负载均衡集群功能.
软件项目之一.
第四段:关于LVS的配置使用:
? LVS负载均衡调度技术是在Linux内核中实现的,所以呢,被称为Linux
虚拟服务器.我们使用该软件配置LVS时候,不能直接配置内核中的ipvs,
而需要使用ipvs的管理工具ipvsadm进行管理,ipvs的管理工具ipvsadm管理ipvs.
第五段:LVS技术点小结:
①.)真正实现负载均衡的工具是ipvs,工作在linux内核层面.
第六段:LVS体系结构与工作原理:
负载均衡(LB)有时也被称为LVS Director(简称 Director).
的广域网相互连接,在他们的前端有一个负载调度器(Load Balancer).负载调度器能
无缝地将网络请求调度到真正的服务器上,从而使得服务器集群的结构对客户是透明的,
客户访问集群系统提供的网络服务就像访问一台高性能、高可用的服务器一样.客户程序
不受服务器集群的影响不需做任何修改.系统的伸缩性通过在服务集群中透明地加入和删除
一个节点来达到,通过检测节点或服务进程故障和正确的重置系统达到高可用性.由于我们的负载调度技术在
linux内核中实现的,我们称之为linux虚拟服务器(Linux Virtual Server).
第七段:LVS社区提供了一个命名的约定:
名称:? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 缩写? ? ? ? ?
虚拟IP地址(Virtual IP Address)? ? VIP
比如: 域名就解析到vip上提供服务.
-------------------------------------------------------------------------------
真实ip地址(Real Server ip Address)? ? 缩写:VIP
说明:在集群下面节点上使用的ip地址,物理ip地址.
-----------------------------------------------------------------------------------
Director的ip地址(Director ip Adress)? 缩写:DIP
说明:Director用于连接内外网络的ip地址,物理网卡上的IP地址,
是负载均衡上的ip.
-------------------------------------------------------------------------------------
给集群的请求的源ip地址.
----------------------------------------------------------------
LVS集群内部的节点称为真实服务器(Real server),也叫做集群节点.请求集群服务的
和真实服务器使用IP地址彼此进行通信.
------------------------------------------------------------------------------------------
①.)IP虚拟服务软件ipvs,在调度器的实现技术中,IP负载均衡技术是
效率最高的.在已用的ip负载均衡技术中有通过网络地址转换
(Network Address Translation)将一组服务器构成一个高性能的、高可用的虚拟服务器,
我们称之为VS、NAT技术(Virtual Server Network Adress Translation).
方法VS/TUN(Virtual Server via IP Tunneling)和通过直接路由实现虚拟服务
器的方法VS/DR(Virtual Server via Director Routing),它们可以极大地提高系统的伸缩性.
LVS的四种工作模式:
? 缩写及全拼:
NAT(Network Adress Translation)、TUN(Tunneling)、
DR(Director Routing)、FULLNAT(FULL Network address Translation)
-------------------------------------------------------------------------------------------
第九段:什么是ARP协议:
①.) ARP协议:全称"Address Resolution Protocol",中文名地址解析协议,使用ARP协议可
实现通过IP地址获得得对应主机的物理地址(MAC地址).
这种互联网地址是在网际范围标识主机的一种逻辑地址.为了让报文在
物理网路上传输,还必须要知道对方目的主机的物理地址(MAC)才行.这样就存在把IP地址变成
物理地址的地址转换的问题.
IP地址转换为相应的物理地址(MAC地址),这个服务或者功能就是ARP协议.
? 所谓的"地址解析",就是主机在发送帧之前将目标IP地址转换成目标MAC地址的过程,
ARP协议的基本功能就是通过目标设备的ip地址,查询目标设备的MAC地址,以保证主机
间互相通信的顺利进行.
? ARP协议和DNS有点相像之处,不同点是:DNS是在域名和IP之间的解析,另外,ARP协议不需要
配置服务,而DNS要配置服务才行.
? ARP协议要求通信的主机双方必须在同一个物理网段(即局域网)!
①ARP全称"Address Resolution Protocol";
--------------------------------------------------------------------------------------------------------
十、ARP缓存表:
①.)每台安装有TCP/IP协议的电脑都会有一个ARP缓存表(windows 命令提示符里输入arp -a即可).
表里的ip地址与MAC地址是一一对应的.
arp常用命令:
? arp -a :查所有记录
? arp -d :清除
? arp -s :绑定IP和MAC
①主机有了arp缓存表,可以加快ARP的解析速度,减少局域网内广播风暴.
OSI模型把网络工作分为七层,彼此不直接通信打交道,只通过接口.IP地址工作在第三层,
MAC地址工作在第二层.当协议在发送数据包时,需要先封装第三层IP地址,第二层MAC地址的报头,
但是协议只知道目的节点的ip地址,不知道目的节点的MAC地址,又不能跨第第二段:三层,所以得用ARP协议服务,
来帮助获取目的节点的MAC地址.
①ARP病毒,ARP欺骗
ARP攻击就是通过伪造IP地址和MAC地址对实现ARP欺骗的,如果一台主机中了ARP病毒,
那么它就能在网络中产生大量的ARP通信量,很快的进行广播以至于使网络阻塞,攻击者
只要持续不断的发出伪造的ARP响应就能更改局域网中目标主机ARP缓存中的IP-MAC条目,
造成网络中断或者中间人攻击.
arp协议:
(1).硬件类型:
硬件地址类型,该字段值一般为ARPHRD_ETHER,表示以太网.
表示三层地址使用的协议,该字段值一般为ETH_P_IP,表示IP协议
常见的有四种,arp请求,arp相应,rarp请求,rarp相应.
arp头数据结构:
①初始化arp表arp_tbl;
一个neighbour对应一个邻居项,就是一个arp条目
邻居项函数指针表,实现三层和二层的dev_queue_xmit()之间的跳转.
用来存储统计信息,一个结构实例对应一个网络设备上的一种邻居协议.
注册arp报文类型 :dev_add_pack(arp_packet_type);
就是把arp_packet_type添加到ptype_base哈希表中.
注册新通知事件的时候,在已经注册和UP的设备上,会调用一次这个通知事件.
设备事件类型:
创建一个邻居项,并将其添加到散列表上,返回指向该邻居项的指针.
tbl:待创建的邻居项所属的邻居表,即arp_tbl;
pkey:三层协议地址(IP地址)
dev:输出设备
want_ref:?
创建邻居项
①设置邻居项的类型
调用dst_link_failure()函数向三层报告错误,当邻居项缓存中还有未发送的报文,而该邻居却无法访问时被调用.不懂.
用来发送arp请求,在邻居项状态定时器处理函数中被调用.
neigh:arp请求的目的邻居项
skb:缓存在该邻居项中的待发送报文,用来获取该skb的源ip地址.
将得到的硬件源、目的地址,IP源、目的地址等作为参数,调用arp_send()函数创建一个arp报文并将其输出.
创建及发送arp报文
创建arp报文,填充字段.
发送arp报文
用来从二层接收并处理一个arp报文.这个函数中就是做了一些参数检查,然后调用arp_process()函数.
neigh_event_ns
neigh_update
这个函数的作用就是更新邻居项硬件地址和状态.分支比较多.
neigh_update_notify
代理arp(proxy arp),通常像路由器这样的设备才使用,用来代替处于另一个网段的主机回答本网段主机的arp请求.
感觉代码ARP好像没啥用呀.
网络主机发包的一般过程:
①当目的IP和自己在同一网段时,直接arp请求该目的IP的MAC.
当主机没有默认网关的时候,arp请求别的网段的报文,到达路由器后,本来路由器是要隔离广播的,把这个arp请求报文给丢弃,这样就没法通信了.当路由器开启arp proxy后,路由器发现请求的目的IP在其他网段,就自己给主机回复一个arp响应报文,这样源主机就把路由器的MAC当成目的IP主机对应的MAC,可以通信了.这样可能会造成主机arp表中,多个IP地址都对应于路由器的同一个MAC地址.
可以使用arping命令发送指定IP的arp请求报文.
写完了发现这个老妹写的arp代理文章蛮好的,不过她好像是转载的.
以上就是土嘎嘎小编为大家整理的linux的arp命令相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!