路由

FRR BGP协议分析12 -- ZEBRA路由的处理1

拥有回忆 提交于 2019-12-11 17:41:59
当前面初始化完成的时候,zebra客户端线程(zebra_apic)静静等待客户端的消息,zebra dplane也急不可待了。 本次我们以BGP 为例,当BGP 根据自己的规则优选路由后,就会发给zebra,在函数bgp_process_main_one里面,把路由发布出去后,就会执行fib update动作,调用bgp_zebra_announce函数发布路由到zebra里面。 来源: CSDN 作者: confirmwz 链接: https://blog.csdn.net/armlinuxww/article/details/103488042

FRR BGP协议分析12 -- ZEBRA路由的处理1

梦想的初衷 提交于 2019-12-11 16:11:34
当前面初始化完成的时候,zebra客户端线程(zebra_apic)静静等待客户端的消息,zebra dplane也急不可待了。 本次我们以BGP 为例,当BGP 根据自己的规则优选路由后,就会发给zebra,在函数bgp_process_main_one里面,把路由发布出去后,就会执行fib update动作,调用bgp_zebra_announce函数发布路由到zebra里面。 来源: CSDN 作者: confirmwz 链接: https://blog.csdn.net/armlinuxww/article/details/103488042

FRR BGP协议分析12 -- ZEBRA路由的处理1

故事扮演 提交于 2019-12-11 15:35:52
当前面初始化完成的时候,zebra客户端线程(zebra_apic)静静等待客户端的消息,zebra dplane也急不可待了。 本次我们以BGP 为例,当BGP 根据自己的规则优选路由后,就会发给zebra,在函数bgp_process_main_one里面,把路由发布出去后,就会执行fib update动作,调用bgp_zebra_announce函数发布路由到zebra里面。 来源: CSDN 作者: confirmwz 链接: https://blog.csdn.net/armlinuxww/article/details/103488042

[Linux] linux路由表

微笑、不失礼 提交于 2019-12-11 14:20:14
路由表用于决定数据包从哪个网口发出,其主要判断依据是目标IP地址 Linux路由表其实有2个主要概念:按顺序走路由策略,在路由策略对应的路由表中匹配规则 路由策略(rule) 路由表(table) 查看所有的路由策略,32766那个策略最有用,对应的main路由表也是默认展示的路由表 ip rule list 0: from all lookup local 32766: from all lookup main 32767: from all lookup default 查看main路由表 ip route list table main default via 10.105.0.1 dev eth0 onlink 10.105.0.0/18 dev eth0 proto kernel scope link src 10.105.38.204 172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 目标ip是10.105.0.0/18网段的走直连eth0网卡 目标ip是172.17.0.0/16网段的走直连docker0网卡,因为我安装了docker default默认的需要走网关10.105.0.1 来源: https://www.cnblogs.com/taoshihan/p/12022102

100 个网络基础知识

浪尽此生 提交于 2019-12-11 13:16:26
1)什么是链接? 链接是指两个设备之间的连接。它包括用于一个设备能够与另一个设备通信的电缆类型和协议。 2)OSI 参考模型的层次是什么? 有 7 个 OSI 层:物理层,数据链路层,网络层,传输层,会话层,表示层和应用层。 3)什么是骨干网? 骨干网络是集中的基础设施,旨在将不同的路由和数据分发到各种网络。它还处理带宽管理和各种通道。 4)什么是 LAN? LAN 是局域网的缩写。它是指计算机与位于小物理位置的其他网络设备之间的连接。 5)什么是节点? 节点是指连接发生的点。它可以是作为网络一部分的计算机或设备。为了形成网络连接,需要两个或更多个节点。 6)什么是路由器? 路由器可以连接两个或更多网段。这些是在其路由表中存储信息的智能网络设备,例如路径,跳数等。有了这个信息,他们就可以确定数据传输的最佳路径。路由器在 OSI 网络层运行。 7)什么是点对点链接? 它是指网络上两台计算机之间的直接连接。除了将电缆连接到两台计算机的 NIC卡之外,点对点连接不需要任何其他网络设备。 8)什么是匿名 FTP? 匿名 FTP 是授予用户访问公共服务器中的文件的一种方式。允许访问这些服务器中的数据的用户不需要识别自己,而是以匿名访客身份登录。 9)什么是子网掩码? 子网掩码与 IP 地址组合,以识别两个部分:扩展网络地址和主机地址。像 IP 地址一样,子网掩码由 32 位组成。 10

浅谈Keepalived双机热备

ε祈祈猫儿з 提交于 2019-12-11 09:05:58
一、Keepalived双机热备的基础知识 keepalived官方网站: www.keepalived.org/ 在非LVS环境中keepalived也可以作为热备软件使用。 1、Keepalived作用 keepalived最初是专门针对LVS设计的一款强大的辅助工具,主要用来提供故障切换和健康检查功能——判断LVS负载调度器、节点服务器的可用性,及时隔离并替换为新的服务器,当故障主机回复后将其重新加入群集。单独部署LVS环境的话,调度器发生宕机的话,整个群集就失效了,某一个web节点宕机后,客户端在访问时,总会碰上访问不到网页的情况,所以,将keepalived和LVS结合起来,才可形成一个真正的高可用群集,当然,后端的共享存储也必须搭建一个高可用的存储服务器,三者其中有一个满足不了,都不能称之为一个高可用的群集环境。 2、Keepalived的热备方式 keepalived采用VRRP(虚拟路由冗余协议)热备份协议,以软件的方式实现Linux服务器的多机热备功能。VRRP是针对路由器的一种备份解决方案——由多台路由器组成一个热备组,通过共用的虚拟IP(VIP)地址对外提供服务;每个热备份组内同一时刻只有一台主路由器提供服务,其他路由器处于冗余状态,若当前在线的路由器失效,则其他路由器会自动接替(优先级决定接替顺序)虚拟IP地址,以继续提供服务。

数据包在不同网段间传送过程中mac及ip的变化

二次信任 提交于 2019-12-11 08:09:05
一、前言 最近一直在做网络编程的项目,编程和调试过程中关注的点始终是收发数据是否正常,只是为了确保数据能够被正常收到就好,那么数据包从一台主机发出,去往另外一台主机的过程是怎么样的?数据包经历了什么,有没有变化,ip地址变化还是mac地址变了?每天陪伴我们的电脑又是如何正常上网的呢?上网的数据包又是怎么传输的?这些问题成为我最新的关注点,这篇文章将一一为大家揭开这些神秘的面纱,详细介绍一下数据包的走向。 二、网络拓扑: 我们假设现有的网络拓扑图如图1所示: 图1 整个网络拓扑中有三个路由器R1,R2,R3;俩台主机PC1,PC2。其中R3 wan口是接外网环境,lan口接R1,R2构造俩个内部的局域网,PC1,PC2分别在R1,R2所构造的局域网内。 路由器wan,lan配置如下: R3: wan :218.205.167.2,lan:10.66.0.1 R1: wan:10.66.0.3,lan:192.168.33.1 R2: wan:10.66.0.2,lan:192.168.22.1 主机IP配置如下: PC1:192.168.33.105 PC2:192.168.22.103 三、跨网段访问内网: 如图1所示(假设PC2向PC1发送一个Ping请求): PC1与PC2从属不同的网段,数据包是如何传输的呢?我们暂且做如下假设: ①假定传输的有效数据不管;

eNSP——静态路由的基本配置

与世无争的帅哥 提交于 2019-12-11 02:40:26
原理: 静态路由是指用户或网络管理员手工配置的路由信息。当网络的拓扑结构或链路状态发生改变时,需要网络管理人员手工修改静态路由信息。 相比于动态路由协议,静态路由无需频繁地交换各自的路由表,配置简单,比较适合小型、简单的网络环境。 静态路由不适合大型和复杂的网络环境,因为当网络拓扑结构和链路状态发生变化时,网络管理员需要做大量的调整,且无法自动感知错误发生,不易排错。 默认路由是--种特殊的静态路由,当路由表中与数据包目的地址没有匹配的表项时,数据包将根据默认路由条目进行转发。默认路由在某些时候非常有效,如在末梢网络中,默认路由可以大大简化路由器配置,减轻网络管理员的工作负担。 拓补图: 实验编址: 1.基本配置 根据实验编址进行基本配置。我们可以把PC1-PC2ping一下,当然肯定是ping不通的。 因为现在两台主机跨越了若干不同的网段,只通过简单的IP地址等基本配置是无法实现的。必须在3台路由器上添加相应的路由信息,可以通过配置静态路由实现。 2.实现主机PC1与PC2之间的通信 对于R1而言,要发送数据到PC2,则必须先发送给R2。PC2的网段为192.168.20.0 24 ,R2为R1的下一跳路由器,目的IP为10.0.12.2。 在R1上配置 同理在R2配置 当然,只这么配置当然实现不了PC间互通。 对于R3来说,要发送数据到PC1,则必须先发送给R2

自己对VUE知识的总结

时光毁灭记忆、已成空白 提交于 2019-12-11 02:11:18
总结 搭建项目 第一类是脚手架搭建 vue-cli脚手架的环境 node vue-cli 下载nodejs安装到本地 全局安装vue-cli cli安装命令 npm install -g @vue/cli 创建项目 vue create 项目名称 可以选择两种方式 第一中默认方式(不推荐) 第二种 自定义方法 选择history模式(大部分情况选择no) 其他自定义选项使用 上下键选择 空格键可以选中或取消选中 vue-cli2 的项目搭建命令 cli 安装命令 npm install vue-cli -g 创建项目的命令 vue init webpack 项目名称 第二种 webpack搭建项目 两个重要的依赖 第一个 vue-loader 第二个 vue-template-compiler 指令 v-show v-if 区别 v-if是删除和新增dom控制的显示隐藏 v-show是使用css样式控制的显示隐藏 v-html v-text v-text 会把变量中的标签当成字符串渲染 v-html 会解析标签 页面上不显示 v-model 作用: 数据双向绑定 原理: Object.defineProperty({set: ‘’,get: ‘’}) this.变量 = ‘值’ 得时候 会调用 set方法设置数据 在dom中渲染该变量的时候会调用get方法 v-for 作用 循环

vue路由router的创建

旧街凉风 提交于 2019-12-11 01:55:06
vue路由router的创建 1、首先用脚手架搭建一个项目 2、使用npm下载包 npm install vue-router (不清楚的小伙伴看我前面的文章) npm install vue-router 3、src目录下新建一个router文件夹,文件夹中新建index.js 4、在main.js文件中导入文件 import router from '@/router/index.js' import App from '@/App.vue' 并注入router 总的如下 import Vue from 'vue' import App from '@/App.vue' import router from '@/router/index.js' Vue . config . productionTip = false new Vue ( { // 注入,记得要通过 router 配置参数注入路由, // 从而让整个应用都有路由功能 router , render : h => h ( App ) } ) . $mount ( '#app' ) 5、在刚才新建的index.js中,创建路由模块 // 1.引入vue和vue-router import Vue from 'vue' import VueRouter from 'vue-router' // 引入路由所映射的组件