arp

LVS

こ雲淡風輕ζ 提交于 2019-12-06 08:44:47
简介 LVS是四层调度(OSI模型的下四层),不支持应用层协议内部调度; lvs是内核级功能,工作于内核空间; lvs是内核级功能,所以性能比应用级功能强,因为lvs不受socket限制(IP加端口号),一个IP支持0——65535个端口 lvs用户空间管理工具是ipvsadm,用于管理集群服务及RealServer lvs并发量大(可以达到几百万并发),性能好; 所以一般lvs当做最外层调度,第二级调度才使用nginx或者haproxy; lvs:Linux Virtual Server,阿里四层SLB (Server Load Balance)使用 nginx:支持七层调度,阿里七层SLB使用Tengine haproxy:支持七层调度 会话保持:负载均衡 (1) session sticky:同一用户调度固定服务器(session绑定) Source IP:LVS sh算法(对某一特定服务而言)(SNAT) Cookie(每个用户的cookie是不同的;每个用户访问不同的网站,会分配不同的cookie),cookie属于应用层,lvs实现不了代理 (2) session replication:每台服务器拥有全部session(session复制) session multicast cluster (3) session server:专门的session服务器

TCP/IP详解 IP路由选择

て烟熏妆下的殇ゞ 提交于 2019-12-06 06:42:59
TCP/IP详解 IP路由选择 在本篇文章当中, 将通过例子来说明IP路由选择器过程 如图所示, 主机A与主机B分别是处在两个不同的子网当中, 中间通过一个路由连接. 如果主机A请求与主机B进行通行, 主机A寻找主机B的位置的过程就可以理解为IP路由的选择过程. 现在主机A的用户通过Ping命令确认与主机B的连通性. Ping命令看似简单, 但是其中IP路由选择的过程还是会有很多的步骤. 具体的步骤如下 : 当主机A上输入12.34.56.78之后, 主机A的因特网控制报文协议(ICMP)创建一个回应请求数据包, 其数据域中只包含有字母. ICMP协议会将刚刚创建的回应请求数据包(有效负荷)转交给因特网协议(IP协议)。IP协议会对这个数据包进行封装,创建一个数据包。在IP协议创建的数据包中,包括主机A的IP地址,目的主机B的IP地址以及值为01h的协议字段。当数据包达到主机B时,主机B通过判断协议字段01h,将这个有效负荷交给ICMP协议处理。 IP协议创建数据包后,会判断目的主机B的IP地址是处于本地网络中还是处于远程网络。根据IP地址规则,主机A、B属于不同网络。此时IP协议所创建的数据包会被发送到默认的网关。(在每个终端设备中,网络配置中需要包含自身的IP地址,以及默认到的网关地址。在不同网络之间的主机互相通信,依靠的就是网关设备) 如图中所示,默认的网关就是图中的路由器

find interfaces and ip addresses (arp in C#)

試著忘記壹切 提交于 2019-12-06 05:21:19
i have a simple question but im not able to implement it cuz of lack of experience on C#. when i open cmd and type arp -a command, it shows me all interfaces and ip addresses are routing. so, my aim is to implement above process in C# and get ip, mac etc... could somebody help me out on this trick? i would greatly appreciate. thanks anonymous Chris Pietschmann wrote a blog post on what you're looking for. It mimics the "arp -a" command. IPInfo Class: using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Net; /// <summary> /// This class

ARP

醉酒当歌 提交于 2019-12-06 03:31:47
简介 地址解析协议(Address Resolution Protocol),其基本功能为透过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。它是IPv4中网络层必不可少的协议,在IPv6中不适用。 工作流程 假设主机A和B在同一个网段,主机A要向主机B发送信息,具体的地址解析过程如下: (1) 主机A首先查看自己的ARP表,确定其中是否包含有主机B对应的ARP表项。如果找到了对应的MAC地址,则主机A直接利用ARP表中的MAC地址,对IP数据包进行帧封装,并将数据包发送给主机B。 (2) 如果主机A在ARP表中找不到对应的MAC地址,则将缓存该数据报文,然后以广播方式发送一个ARP请求报文。ARP请求报文中的发送端IP地址和发送端MAC地址为主机A的IP地址和MAC地址,目标IP地址和目标MAC地址为主机B的IP地址和全0的MAC地址。由于ARP请求报文以广播方式发送,该网段上的所有主机都可以接收到该请求,但只有被请求的主机(即主机B)会对该请求进行处理。 (3) 主机B比较自己的IP地址和ARP请求报文中的目标IP地址,当两者相同时进行如下处理:将ARP请求报文中的发送端(即主机A)的IP地址和MAC地址存入自己的ARP表中。之后以单播方式发送ARP响应报文给主机A,其中包含了自己的MAC地址。 (4) 主机A收到ARP响应报文后

ARP工作原理

陌路散爱 提交于 2019-12-06 02:13:13
每台主机都会在自己的ARP缓冲区中建立一个 ARP列表,以表示IP地址和MAC地址的对应关系。 当源主机需要将一个数据包要发送到目的主机时,会首先检查自己 ARP列表中是否存在该 IP地址对应的MAC地址。 如果有,就直接将数据包发送到这个MAC地址;如果没有,就向本地网段发起一个ARP请求的广播包,查询此目的主机对应的MAC地址。 此ARP请求数据包里包括源主机的IP地址、硬件地址、以及目的主机的IP地址。网络中所有的主机收到这个ARP请求后,会检查数据包中的目的IP是否和自己的IP地址一致。 如果不相同就忽略此数据包;如果相同,该主机首先将发送端的MAC地址和IP地址添加到自己的ARP列表中。 如果ARP表中已经存在该IP的信息,则将其覆盖,然后给源主机发送一个 ARP响应数据包,告诉对方自己是它需要查找的MAC地址。 源主机收到这个ARP响应数据包后,将得到的目的主机的IP地址和MAC地址添加到自己的ARP列表中,并利用此信息开始数据的传输。 如果源主机一直没有收到ARP响应数据包,表示ARP查询失败。 来源: https://www.cnblogs.com/cyqq/p/11956410.html

ARP工作机制

微笑、不失礼 提交于 2019-12-06 02:12:38
以太网环境下,同一个网段的主机之间需要互相知道对方的MAC地址,才能访问。 TCP/IP协议栈从上层到下层的封装过程中,第三层封装需要知道目的IP,第二层封装需要知道目的MAC。 目的IP一般由用户手工输入,或者由应用程序填充,也可以通过名称解析系统解析得到,而 目的MAC就需要使用ARP来解析 。 ARP解析MAC地址 的过程: 第一步: 上层应用产生数据,这里用FTP协议为例,在FTP协议中定位了目的IP。 第二步: 那么,封装的过程如下: 应用层:需要FTP的控制信息,包括用户名、密码等; 传输层:目的端口号为21,源为随机端口号; 网络层:目的IP为172.16.1.200,源IP为172.16.1.1; 数据链路层:因为不知道目的IP 172.16.1.200对应的MAC,所以目的IP到目的MAC的封装映射失败; 三层到二层的封装失败,由于二层是以太网, ARP的工作机制 便会产生ARP Request去解析目的MAC,此时,源MAC为数据发起者的MAC,目的MAC地址为FFFF:FFFF:FFFF(代表所有MAC) 第三步: ARP Request到达本网段中的所有设备上,因为目的为FFFF:FFFF:FFFF,所以所有设备都可以拆掉二层的封装,然后解读ARP数据包中需要解析的目的IP。 第四步: 目的IP不正确的设备直接忽略这个ARP请求包,目的IP正确的设备

Find the MAC address of all devices connected to the same Wifi network

烂漫一生 提交于 2019-12-06 01:55:54
I'm trying to build a software that checks what devices are connected to my home network and return a list of those device's MAC address every 10 minutes or so. My approach was to ping all of the possible IP addresses on the network and call "arp -a" afterwards. The following code works to find if a device is registered on an IP address, but I don't know how to get the MAC address from this. try { String currentIP = InetAddress.getLocalHost().toString(); String subnet = getSubnet(currentIP); System.out.println("subnet: " + subnet); for (int i=1;i<254;i++){ String host = subnet + i; System.out

ARP协议

二次信任 提交于 2019-12-06 00:59:00
还记得数据链路层的以太网的协议中,每一个数据包都有一个MAC地址头么?我们知道每一块以太网卡都有一个MAC地址,这个地址是唯一的,那么IP包是如何知道这个MAC地址的?这就是ARP协议的工作。   ARP(地址解析)协议是一种解析协议,本来主机是完全不知道这个IP对应的是哪个主机的哪个接口,当主机要发送一个IP包的时候,会首先查一下自己的ARP高速缓存(就是一个IP-MAC地址对应表缓存),如果查询的IP-MAC值对不存在,那么主机就向网络发送一个ARP协议广播包,这个广播包里面就有待查询的IP地址,而直接收到这份广播的包的所有主机都会查询自己的IP地址,如果收到广播包的某一个主机发现自己符合条件,那么就准备好一个包含自己的MAC地址的ARP包传送给发送ARP广播的主机,而广播主机拿到ARP包后会更新自己的ARP缓存(就是存放IP-MAC对应表的地方)。发送广播的主机就会用新的ARP缓存数据准备好数据链路层的的数据包发送工作。   一个典型的arp缓存信息如下,在任意一个系统里面用“arp -a”命令:   Interface: 192.168.11.3 --- 0x2   Internet Address Physical Address Type   192.168.11.1 00-0d-0b-43-a0-2e dynamic   192.168.11.2 00-01-4a

DHCP协议总结

南笙酒味 提交于 2019-12-06 00:19:24
DHCP动态主机配置协议,简单点说,就是提供了自动获取ip地址的功能,基于四层的UDP协议; 以下描述此协议的整个工作流程: (1) 客户端发送discovery报文,二三层广播报文,源ip地址全0; (2)服务器收到discovery报文之后,进行ip地址分配,找到ip地址,并且进行arp探测,当发现 此ip地址空闲之后,组offer报文,发送给客户端,内部包含有ip地址,客户端mac地址,租约时间等信息; (3)客户端收到offer报文之后,会选择一个(一般是第一个)进行应答,并且发送request报文到服务器,同时也会进行 ARP探测,当发现有ip地址冲突的时候,会发送decline报文到服务器终止使用该ip地址,然后重新发送discovery; (4)服务器发送ack报文确认地址,客户端收到ack之后,开始使用该ip地址; ---以上流程报文均为广播; (5)客户端会在租约时间的1/2和3/4时间开始尝试续租该ip地址,成功则继续使用,否则到达租期后 不能继续使用,需要施放该ip地址,并且重新发discovery; (6)客户端可以发送release报文随时放弃该ip地址的使用; 我们重点说下服务器的一些实现问题: 1. 建立bit数组,在bit数组中将分配出去或者不能够分配的地址进行标记; 比较烂的实现是每次收到discovery请求之后,先随机一个地址

eNSP实操笔记——单臂路由

梦想的初衷 提交于 2019-12-06 00:14:54
设备配置: 1、LSW2与LSW3两台交换机配置:创建vlan10/20——连接PC的端口设置为access类型,10网段20网段的PC分别并入vlan10和vlan20——GE0/0/2端口设置为trunk型,允许vlan10/20通过。 2、LSW1交换机配置:创建vlan10 20——GE0/0/1、GE0/0/2和GE0/0/24(24口为级联口)端口均设为trunk型,允许vlan10 20通过。 3、R1路由器配置: 创建子接口0/0/0.10——封装802.1Q协议为dot1q termination vid 10——添加网关ip address 192.168.10.254 24——开启arp广播arp broadcast enable 创建子接口0/0/0.20——封装802.1Q协议为dot1q termination vid 20——添加网关ip address 192.168.20.254 24——开启arp广播arp broadcast enable 4、配置完成,测试连通性。 注:交换机LSW1不需要有网关配置,三层交换机转单臂路由时要进入vlan中用指令undo ip address去除网关地址。 PC1-->192.168.10.1/24 PC2-->192.168.10.2/24 PC3-->192.168.20.1/24 PC4-->192