- 博客(140)
- 收藏
- 关注
原创 HCNP路由交换学习指南--- 静态路由
HCNP路由交换学习指南— 静态路由文章目录HCNP路由交换学习指南--- 静态路由静态路由的基本概念静态路由配置须知默认路由浮动静态路由案例,静态路由和BFD联动静态路由 Static Route 是网络管理员通过手工配置的方式为路由器创建的路由;静态路由的基本概念路由器能够自动发现直连路由并将其加载到路由表中,而对于到达非直连网络的路由,路由器就必须通过其他途径来获取,静态路由是一种最直接、最简单的方法。所谓静态路由,也就是网络管理员使用手工配置的方式为路由器添加的路由,通俗的说法是,网络管理员
2021-05-05 22:21:10
1619
1
原创 HCNP路由交换学习指南--- 路由的基本概念
文章目录HCNP路由交换学习指南--- 路由的基本概念交换机路由表学习路由信息来源路由的优先级路由的度量值HCNP路由交换学习指南— 路由的基本概念交换机路由表学习路由是一种逐跳(HopByHop)的行为,也就是说,数据从源被发出直至其到达目的地的过程中,沿途的每一台路由器都会执行独立的路由查询及报文转发动作,因此处于传输路径上的路由器都需要拥有到达目的网段的路由,否则该报文将在中途被丢弃。在构建网络时,要充分考虑数据的双向可达性,也就是在具备路由功能的华为数据通信产品上查看路由表的命令是dis
2021-03-28 23:33:21
1644
原创 网络协议——IPv6从初始到详解,协议包头说明
文章目录IPv6地址IPv6地址的显示规则IPv6 地址掩码IPv6 的地址类型1.全球单播地址2.标识IPv6的地址类型3.本地单播地址4.任意播地址5.多播地址6.嵌入的IPv4地址IPv6包头格式IPv6扩展报头IPv6地址IPv6地址的显示规则32位的IPv4地址的表示方式了,IPv4地址被分割为4个8位段,其中每个8位段的数字大小在0~255之间,并且每个8位段之间使用英文符号句点“.”来分开,因此有时也使用术语“点分十进制表示法”来专指IPv4地址的这种表示法。而128位的IPv6地址则
2021-03-08 22:21:47
5031
原创 地址解析协议(ARP)
文章目录地址解析协议(ARP)报文格式代理ARP无故ARP反向ARP地址解析协议(ARP)这里是阅读《TCP/IP 路由技术》记录的相关知识点,会把协议说的比较清楚;之前的博客链接:《ARP 协议学习以及对应报文抓取分析》https://blog.csdn.net/LL845876425/article/details/89198392沿独立的数据链路传送数据包时,需要把数据包封装在帧中,并且使用数据链路标识(如MAC地址)让帧可以从链路的源点到达目的地。数据链路上的设备也需要一种方法发现邻居的
2021-02-13 13:39:30
618
原创 网络基础知识---IP包头(Packet Header)格式
IP包头(Packet Header)的格式版本(Version)——标识了数据包的IP版本号。这个4位字段的值设置为二进制的0100表示IP版本4(IPv4),设置为0110表示IP版本6(IPv6)。本章主要涉及的是IPv4,在第2章中主要讲述IPv6。在表11中列出了所有已分配的现行版本号及相关RFC。除4和6(早期提出的简单Internet协议——即SIP协议,也使用版本号6)之外,其他的所有版本号仅作为“历史产物”而存在,感兴趣的读者可以阅读相关的RFC。报头长度(header le
2021-01-12 23:12:09
8802
原创 [译]Kubernetes Multi-Cluster Networking -Cilium Cluster Mesh
文章目录[译]Kubernetes Multi-Cluster Networking -Cilium Cluster Mesh前言Cilium CNI ImplementationCilium Cluster MeshMulti-node Pod-Pod Packet FlowTesting Multi-cluster Pod Interconnectivity with YugaByteDBMulti-Cluster Network Policy — Limiting Pod-Pod Communicat
2021-01-03 21:38:32
803
原创 Nginx rewrite模块踩坑小计----配置不正确将url重写
文章目录Nginx rewrite模块踩坑小计----配置不正确将url重写Nginx rewrite模块踩坑小计----配置不正确将url重写前言今天遇到了一个比较有意思的涉及 nginx 的小问题,这里在测试环境模拟记录一下;问题现象客户端访问7层 规则,request url 类似为:http://www.test.com/test?xxx=aaa ; 请求需要重定向到HTTPS ,实际重定向后的请求变成了 https://www.test.com/?xxx=aaa ;url 中的path
2020-12-28 22:15:26
783
1
原创 虚拟网络之Kubernetes Cilium CNI 网络通信调测
文章目录虚拟网络之Kubernetes Cilium CNI 网络通信调测前言Cilium CNI 配置查看同Node pod 通信:跨node pod 访问:Cilium cli参考:虚拟网络之Kubernetes Cilium CNI 网络通信调测前言Cilium CNI 是基于Linux 新版本内核中的eBPF实现的,对应数据面转发逻辑和Flannel CNI 比较有了不小的变化,从实现机制上来说,性能上是有很大的提升的;本篇就是将我在环境上实操验证进行一个简单的记录;关于Cilium CNI
2020-12-20 22:50:26
1500
原创 虚拟网络之Kubernetes Cilium CNI 快速部署实操
文章目录虚拟网络之Kubernetes Cilium CNI 快速部署实操前言卸载Flannel CNIInstall Cilium CNI虚拟网络之Kubernetes Cilium CNI 快速部署实操前言在之前部署的kubernetes 集群,这里想把已部署的Flannel CNI 更换为 Cilium CNI,本篇记录下实操记录;之前部署的记录见博客《记一次实操部署Kubernetes_v1.19.2》卸载Flannel CNI# 一般生产环境是不会这样操作的,因为一旦把 cni 卸载后
2020-11-30 23:13:01
2278
原创 CentOS 7.x 内核kernel版本升级实操
文章目录CentOS 7.x 内核kernel版本升级实操前言实操记录升级前信息查看和准备升级 CentOS 7.× 内核,启用 ELRepo设置 GRUB 默认的内核版本删除 CentOS 更新后的旧内核CentOS 7.x 内核kernel版本升级实操前言在玩耍kubernetes 集群中(之前部署的一套,可以查看我之前的博客内容),想要尝试部署的CNI Cilium 仅在 kernel 4.8 版本以上支持,推荐使用4.9 以上内核版本;而之前部署使用的CentOS 7.6 缺省内核版本为3.1
2020-11-28 23:29:40
5141
原创 Kubernetes 踩坑记录 (基于v1.19.2) ---20201117
文章目录Kubernetes 踩坑记录 (基于v1.19.2) ---20201117前言1/ 新部署kubernets 集群,配置flannel cni 后,pod 访问 pod 不通;2/ 修改flannel type 类型3/ 重启master节点后kubelat 没有自动拉起;4/ 重启后 nginx pod 自动拉起失败报错;Kubernetes 踩坑记录 (基于v1.19.2) —20201117前言在测试环境部署了一套 v1.19.2 的kubernetes 集群,可参考博客记一次实操
2020-11-17 23:20:58
331
原创 虚拟网络之Kubernetes service 详述
文章目录虚拟网络之Kubernetes service 详述前言实操创建svcservice 转发模式User space 代理模式iptables 代理模式[**默认模式**]IPVS 代理模式代理模式总结Service 中额外字段的作用:SVC 配置支持的协议(配置的yaml文件中可见该配置项):Kubernetes外界与Service之间的网络通信ClusterIP 类型实操验证NodePort 类型实操验证虚拟网络之Kubernetes service 详述前言Service是kubernet
2020-11-15 16:27:20
459
原创 Kubernetes CNI flannel 基本配置与流量抓包
文章目录Kubernetes CNI flannel 基本配置与流量抓包前言Recommended backendsVXLANhost-gwUDPExperimental backendsAliVPCAllocAWS VPCGCEIPIPIPSecTroubleshooting实操验证vxlan同 node pod 通信跨 node pod 通信pod 访问 svcKubernetes CNI flannel 基本配置与流量抓包前言源码链接 https://github.com/coreos/flan
2020-11-08 19:51:19
1569
原创 记一次实操部署Kubernetes_v1.19.2
文章目录记一次实操部署Kubernetes_v1.19.2规划信息部署记录安装docker及kubelet初始化master节点加入worker节点部署测试pod 验证通信部署踩坑记录(iptables FORWARD)记一次实操部署Kubernetes_v1.19.2规划信息本次部署使用2台机器;1台master 和 1台node ;master 172.16.0.5 CentOS 7.6node01 172.16.0.49 CentOS 7.6安装后的软件版本为:
2020-11-01 15:26:26
991
1
原创 容器网络之Kubernetes CNI
Kubernetes CNI前言容器网络发展到现在,形成了Docker的CNM以及由Google、CoreOS、Kuberenetes主导的CNI两大阵营。需要明确的是,CNM和CNI只是容器网络的规范,并不是网络实现,它们只是容器网络的规范,从开发者的角度看,就是一堆接口,底层用Flannel也好,用Calico也罢,他们并不关心。Kubernetes作为容器的编排框架,在网络层面,并没有进入更底层的具体容器互通互联的网络解决方案的设计中,而是将网络功能一分为二,主要关注Kubernetes服务在网
2020-10-05 14:38:59
1533
原创 虚拟网络之容器网络(Docker,kubernetes)
文章目录虚拟网络之容器网络(Docker,kubernetes)前言容器容器技术框架Docker1.Docker网络2.Libnetworkkuberneteskubernetes基本概念说明1.Master2.Pod3.Node4.Replication Controller -------(当前很少用,已被deployment替代)5.Service6.Deployment7.NamespaceKubernetes网络1.Pod内部的容器间通信2.Pod间通信3.Pod与Service之间的网络通信4.
2020-09-20 19:45:00
1411
原创 nginx-- Configuring TCP OR UDP Load Balancing
文章目录nginx------ tcp and udp 代理IntroductionInstallConfiguring TCP OR UDP Load Balancing引用资料nginx------ tcp and udp 代理Introductionnginx 反向代理一般都是7层代理,进行http/https 协议层的转发;说起4层代理,一般想到的都是lvs 和 haproxy 这些;目前nginx新版本已经支持 4层 (tcp,udp) 代理;在Nginx1.9.0版本之前,TCP代理一般
2020-09-01 23:21:42
700
原创 nginx--常见模块,headers-more-nginx and set-misc-nginx 等
文章目录nginx--常见模块,headers-more-nginx and set-misc-nginx 等nginx module : headers-more-nginxinstall and overviewDetailnginx module : set-misc-nginxinstall and overviewDetialnginx module : ngx_http_image_filter_moduleinstall and overviewnginx–常见模块,headers-more
2020-08-25 23:10:29
2835
原创 报文分析笔记---常见wireshark报文标记
文章目录报文分析笔记---常见wireshark报文标记Fragmented IP protocolPacket size limited during captureTCP Previous segment not capturedTCP ACKed unseen segmentTCP Out-of-OrderTCP Dup ACKTCP Fast RetransmissionTCP Spurious RetransmissionTCP RetransmissionTCP zerowindowTCP wi
2020-08-09 17:06:29
9292
原创 Virtual Network----dpdk-learning--002------Cache和内存
文章目录Virtual Network----dpdk-learning--002------Cache和内存DPDK中的预取Cache一致性DPDK如何保证Cache一致性TLB和大页Linux激活大页DDIONUMA系统Virtual Network----dpdk-learning–002------Cache和内存在处理器速度不断增加的形势下,处理器处理数据的能力也得到大大提升。但是,数据是存储在内存中的,虽然随着DDR2、DDR3、DDR4的新技术不断推出,内存的吞吐率得到了大大提升,但是相对
2020-07-26 23:23:06
401
原创 Virtual Network----网卡offload特性和网络加速技术简述
文章目录Virtual Network----网卡offload特性和网络加速技术简述前言实例实操TCP/IP协议栈简介DMARSSNAPIChecksum offloadScatter/GatherTSOJumbo FramesGSOLROGROUFOtx-udp_tnl-segmentationVirtual Network----网卡offload特性和网络加速技术简述前言当前越来越多的网卡设备支持 offload 特性,来提升网络收/发性能。offload 是将本来该操作系统进行的一些数据包处
2020-07-21 21:42:16
3011
1
原创 虚拟网络运维----认识DPDK
文章目录认识DPDK简单说明DPDK最佳实践寻找性能的天花板解读数据包处理能力认识DPDK简单说明DPDK全称是DataPlaneDevelopmentKit,从字面解释上看,这是专注于数据面软件开发的套件。本质上,它由一些底层的软件库组成。目前,DPDK使用BSDlicense,绝大多数软件代码都运行在用户态。少量代码运行在内核态,涉及UIO、VFIO以及XenDom0,KNI这类内核模块只能以GPL发布。DPDK逐渐成为通用多核处理器高性能数据包处理的业界标杆。ASIC(Application
2020-07-05 20:35:21
763
原创 Kubernetes学习笔记---002理解 Kubernetes 对象
Kubernetes学习笔记—002理解 Kubernetes 对象本页说明了 Kubernetes 对象在 Kubernetes API 中是如何表示的,以及如何在 .yaml 格式的文件中表示。理解 Kubernetes 对象在 Kubernetes 系统中,Kubernetes 对象 是持久化的实体。Kubernetes 使用这些实体去表示整个集群的状态。特别地,它们描述了如下信息:哪些容器化应用在运行(以及在哪个 Node 上)可以被应用使用的资源关于应用运行时表现的策略,比如重启策略
2020-06-30 21:37:22
202
原创 虚拟网络运维------ Linux 内核配置相关问题记录
文章目录虚拟网络运维------ Linux 内核配置相关问题记录前言内核配置的查看和修改重点内核参数配置详述nf_conntracktcp_max_tw_bucketstcp_fin_timeout其他内核参数配置概述运维问题记录问题1:client port 耗尽无法发起请求,概率性连接失败问题2:Linux OS NAT哈希表满导致丢包(nf_conntrack)问题3:报“Time wait bucket table overflow”错误(tcp_max_tw_buckets)问题4:Linux实
2020-06-30 21:35:47
527
原创 虚拟网络运维----基于wireshark报文分析快速过滤(tcp,icmp,http)报文时延
文章目录虚拟网络运维----基于wireshark报文分析快速过滤(tcp,icmp,http)报文时延前言tcp协议高时延报文定位http协议高时延报文定位icmp协议高时延报文虚拟网络运维----基于wireshark报文分析快速过滤(tcp,icmp,http)报文时延前言在网络运维中,在报文分析时,时延类问题是比较常见的问题场景,如何快速定位到高时延的报文就会比较有用;这里简单介绍一下基于wireshark快速过滤tcp、http、icmp协议报文的高时延报文;文章原创输出,请认准作者[[海
2020-06-21 17:35:52
3837
原创 websocket协议详解及报文分析
websocket 协议详解及报文分析前言相较于HTTP协议,HTTP协议有一个的缺陷为:通信只能由客户端发起。在一些场景下,这种单向请求的特点,注定了如果服务器有连续的状态变化,客户端要获知就非常麻烦。我们只能使用轮询:每隔一段时候,就发出一个询问,了解服务器有没有新的信息。最典型的场景就是聊天室。轮询的效率低,非常浪费资源(因为必须不停连接,或者 HTTP 连接始终打开)。因此,工程师们一直在思考,有没有更好的方法。WebSocket 就是这样发明的。websocket 协议概述Webscok
2020-05-27 23:35:42
20946
1
原创 Kubernetes 学习笔记----001整体概念和概述学习
文章目录Kubernetes 学习笔记----001整体概念和概述学习Kubernetes 概念部分学习概述Kubernetes 对象Kubernetes 控制面Kubernetes Master 节点Kubernetes Node 节点Kubernetes 是什么?——kubernetes概述言归正传为什么需要 Kubernetes,它能做什么?Kubernetes 不是什么Kubernetes 组件控制平面组件(Control Plane Components)kube-apiserveretcdkub
2020-05-21 21:29:38
451
转载 Virtual-Network--—DHCP协议学习以及对应报文分析
文章目录Virtual-Network--—DHCP协议学习以及对应报文分析转载1. DHCP 简介1.1 DHCP 作用1.2 DHCP 工作机制2. DHCP 交互流程2.1 正常交互流程2.2 租约2.3 客户端状态机**2.4 参数配置**3. DHCP 报文3.1 报文类型3.2 报文格式3.3 抓包4. DHCP 中继代理Virtual-Network–—DHCP协议学习以及对应报...
2020-04-04 17:47:32
702
原创 Virtual Network----ping 127.0.0.1回环地址时延大于10ms问题处理记录
文章目录Virtual Network----ping 127.0.0.1回环地址时延大于10ms问题处理记录问题现象问题排查解决方案相关知识Virtual Network----ping 127.0.0.1回环地址时延大于10ms问题处理记录问题现象物理服务器ping 127.0.0.1 回环地址 时延大于10ms,对比正常机器时延 0.01ms -----0.05ms问题排查1、初...
2020-03-30 23:13:44
1479
原创 Virtual Network---tcpdump抓包高阶用法
Virtual Network—tcpdump抓包高阶用法前言tcpdump 是网络抓包的常用工具,基本的使用都已经很熟悉了,本篇主要记录tcpdump 的高阶用法,旨在应用于vxlan、gre、ipip等类型封装报文,大流量场景下精确抓包过滤条件,保证环境安全 等场景;封装报文的抓包过滤在现在SDN 定义网络大行其道的今天,各种overlay 虚拟网络下,报文的封装,外层、内层报文已经是...
2020-03-23 23:51:48
4556
原创 docker学习笔记--20200131
docker 命令梳理docker image search pull ls inspect rm save loaddocker container run (-t -i -d) start stop restart kill attac...
2020-01-31 21:08:03
409
原创 Nginx常用模块学习---定制HTTP头信息定制ngx_http_headers_module设置响应头
Nginx常用模块学习—定制HTTP头信息定制ngx_http_headers_module设置响应头前言HTTP头信息,是实际业务中一个很重要的功能。例如,如果需要将请求结果在浏览器上缓存一段时间,或者在请求代理到后端服务器的过程中生成一个唯一的 ID进行识别。通过对 Nginx进行配置,可以轻松实现这些功能。ngx_http_headers_module是在 Nginx编译时默认自带的模...
2019-10-27 22:54:21
1341
原创 wireshark 报文分析---根据TTL(Time to live)进行报文分析
wireshark 报文分析—根据TTL(Time to live)进行报文分析TTL的作用是限制IP数据包在计算机网络中的存在的时间。TTL的最大值是255,TTL的一个推荐值是64。虽然TTL从字面上翻译,是可以存活的时间,但实际上TTL是IP数据包在计算机网络中可以转发的最大跳数。TTL字段由IP数据包的发送者设置,在IP数据包从源到目的的整个转发路径上,每经过一个路由器,路由器都会修改...
2019-10-23 22:06:02
10839
原创 wireshark 报文分析---根据时间(Arrival Time)过滤报文
wireshark 报文分析—根据时间(Arrival Time)过滤报文前言在进行报文分析时,会需要使用时间过滤报文,比如30min 到 35min之间的报文,或50s之后的报文,这时就需要使用根据时间进行过滤报文;过滤方法以mac 版wireshark为例,选取报文Frame层中的Arrival Time(到达时间),使用该字段作为过滤器条件进行过滤,由于在wireshark 软件中显...
2019-10-19 23:59:41
16405
1
原创 Nginx常见基本配置---日志、HTTP执行阶段
日志Nginx通过 ngx_ http_ log_ module来对日志的记录进行配置。记录自定义变量指令: log_ format语法: log_ format name [escape = default | json | none] string …;默认值: log_ format combined “...";环境: http含义:配置日志的格式。绝大部分请求信息都可以...
2019-09-22 23:01:04
681
原创 Nginx常见基本配置---rewrite 使用指南
Nginx常见基本配置—rewrite 使用指南前言rewrite是 ngx_ http_ rewrite_ module模块下的指令,使用频率非常高。内部重定向rewrite支持的配置环境有 server、 location、 if,它通过 break和 last来完成内部重定向功能。内部重定向是在 Nginx内部发送请求的操作,它可以将请求转发到其他的 location或对 URL进行...
2019-09-18 22:19:36
678
原创 Nginx常见基本配置---upstream 使用指南
Nginx常见基本配置—upstream 使用指南前言利用 proxy_ pass可以将请求代理到后端服务器,前一篇博客中的的配置示例都指向同一台服务器,如果需要指向多台服务器就要用到 ngx_ http_ upstream_ module。它为反向代理提供了负载均衡及故障转移等重要功能。代理多台服务器先来看一个简单的版本:指令: upstream语法: upstream name ...
2019-07-28 23:48:22
118625
2
原创 Nginx常见基础配置---proxy代理模块
Nginx常见基础配置—proxy代理模块proxy代理Nginx使用 ngx_ http_ proxy_ module来完成对后端服务的代理。这一节,我们将一起来见识 Nginx最流行的 proxy代理功能。proxy_ pass请求代理规则语法: proxy_ pass URL;环境: location、 if in location、 limit_ except含义:将请求代理到...
2019-07-10 22:42:02
2514
原创 Nginx 常见基础配置—获取client ip,访问控制(allow/deny,auth身份验证指令,LDAP服务)
获取请求的 IP地址Nginx会将客户端的 IP地址信息存放在 $ remote_ addr变量中,但在生产环境下往往会有各种代理,让获取真实的 IP地址变得困难重重。获取用户的真实 IP地址大部分互联网公司的反向代理都会用到下图所示的 CDN加速代理流程图。用户的请求并不直接和 Nginx打交道,而是由 CDN( Content Delivery Network,即内容分发网络)或WAF ...
2019-07-09 00:15:12
3361
原创 Nginx 笔记存档01:Nginx 编译、安装、配置笔记记录
Nginx首先我们需要一个内核为Linux 2.6及以上版本的操作系统,因为Linux 2.6及以上内核才 支持epoll,而在Linux上使用select或poll来解决事件的多路复用,是无法解决高并发压力问题 的。 我们可以使用uname-a命令来查询Linux内核版本,例如:# uname -a Linux wehf2wng001 2.6.18-128.el5 #1 SMP Wed J...
2019-07-07 23:15:43
294
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人