[svc]容器网络学习索引及网络监控
整理的可能有些误失,抽时间在细细的分类完善下. 发现这篇对于网络从低到高层协议整理的还不错
每层都有一些有意思的话题
一些协议有一些设计上的弱点, 所以产生了种种的网络层安全问题
一般我们学一些
- 1,以太网2的数据格式
- 2,ip 数据格式
- 3,tcp/udp数据格式 .玩明白这些后,会晚一些有用
网络里有意思的大概有这些.
二层的广播,arp(代理arp,免费arp)
ip层的ping的ttl(多窗口ping回包问题(win给所有包统一编号/unix每个窗口进程号)), mtu分片
基于ip的icmp(1,端口不可达 2,目标不可达u,回包可告知到哪里unreachable,可关. 默认路由+ping不存在的ip) RTT(对端收到后将时间戳原本拷贝到数据包回传) ping的频率也可以被限制
tcp层的端口号
udp的traceroute程序(ttl递增 不是我,回icmp超时, 是我回icmp端口不可达): 参考: http://www.freebuf.com/articles/network/118221.html
dns/tftp/语音视频
必有有趣的有代理(不算arp代理了),如ccproxy或一些ss等原理
可能会感兴趣一些https vpn 内网穿透啊 这类
[tcp的13]
TCP半连接与SYN攻击
TCP连接的“三次握手”与“四次挥手”
可以发现一些协议的弱点.这个工具钻了一些协议的空子.
yersinia
监控web连接数(tcp的11种状态)
跟着zabbix使用脚本监控(包含里面的参考链接)溜一遍,zabbix的本末就在脑海里有个影子了.
高性能web要求监控:
系统监控: 一般系统安装完毕,需要加入zabbix,
网络监控: smokping/站长工具 监控宝/听云/安全宝/流量宝/易日志
应用监控: 需要监控他的端口,及系统总的tcp的的11种状态, 每个app的tcp连接状态.
原来zabbix监控进程与端口是如此的简单!
Zabbix监控(十二):自动监控Linux端口
Zabbix监控端口服务TCP连接状态
网络基础
文字标题 | 链接 |
---|---|
二三层数据格式&&三层数据如何匹配路由 | http://www.cnblogs.com/iiiiher/p/8081252.html |
arp协议的细枝末节 | http://www.cnblogs.com/iiiiher/p/8085415.html |
dhcp细枝末节 | http://www.cnblogs.com/iiiiher/p/8080314.html |
gns3模拟器及探讨几个bgp问题 | http://www.cnblogs.com/iiiiher/p/8075349.html |
docker&k8s网络原理
文字标题 | 链接 |
---|---|
docker4种网络最佳实战 | http://www.cnblogs.com/iiiiher/p/8047114.html |
k8s pod的3种网络模式最佳实战 | http://www.cnblogs.com/iiiiher/p/8051947.html |
二层网络
文字标题 | 链接 |
---|---|
linux的ip命令操作接口和路由表 | http://www.cnblogs.com/iiiiher/p/8056930.html |
通过bridge连接单机的多个网络namespace | http://www.cnblogs.com/iiiiher/p/8057922.html |
linux下网桥-docker网桥 | http://www.cnblogs.com/iiiiher/p/8052974.html |
macvlan最佳实战: | http://www.cnblogs.com/iiiiher/p/8059032.html |
macvlan实现双vlan互通 | http://www.cnblogs.com/iiiiher/p/8067226.html |
三层网络
文字标题 | 链接 |
---|---|
linux iptables实战 | http://www.cnblogs.com/iiiiher/p/8066036.html |
docker网络-直接路由模式 | http://www.cnblogs.com/iiiiher/p/8065415.html |
linux上vxlan实战 | http://www.cnblogs.com/iiiiher/p/8082779.html |
docker自带的overlay网络实战 | http://www.cnblogs.com/iiiiher/p/8120300.html |
使用quaaga实现(rip ospf)实现主机间容器互通 | http://www.cnblogs.com/iiiiher/p/8076257.html |
docker calico网络&docker cluster-store | http://www.cnblogs.com/iiiiher/p/8110617.html |
附: edis-memcached-nginx-tcp11监控脚本
具体集成到zabbix,参考
$ cat zabbix_linux_plugins.sh
#!/bin/bash
############################################################
# $Name: zabbix_linux_plugins.sh
# $Version: v1.2
# $Function: zabbix plugins
# $Author: Maotai
# $organization: http://www.cnblogs.com/iiiiher/
# $Create Date: 2018-03-03
# $Description: Monitor Linux Service Status
############################################################
tcp_status_fun(){
TCP_STAT=$1
#netstat -n | awk '/^tcp/ {++state[$NF]} END {for(key in state) print key,state[key]}' > /tmp/netstat.tmp
ss -ant | awk 'NR>1 {++s[$1]} END {for(k in s) print k,s[k]}' > /tmp/netstat.tmp
TCP_STAT_VALUE=$(grep "$TCP_STAT" /tmp/netstat.tmp | cut -d ' ' -f2)
if [ -z $TCP_STAT_VALUE ];then
TCP_STAT_VALUE=0
fi
echo $TCP_STAT_VALUE
}
nginx_status_fun(){
NGINX_PORT=$1
NGINX_COMMAND=$2
nginx_active(){
/usr/bin/curl "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" 2>/dev/null| grep 'Active' | awk '{print $NF}'
}
nginx_reading(){
/usr/bin/curl "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" 2>/dev/null| grep 'Reading' | awk '{print $2}'
}
nginx_writing(){
/usr/bin/curl "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" 2>/dev/null| grep 'Writing' | awk '{print $4}'
}
nginx_waiting(){
/usr/bin/curl "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" 2>/dev/null| grep 'Waiting' | awk '{print $6}'
}
nginx_accepts(){
/usr/bin/curl "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" 2>/dev/null| awk NR==3 | awk '{print $1}'
}
nginx_handled(){
/usr/bin/curl "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" 2>/dev/null| awk NR==3 | awk '{print $2}'
}
nginx_requests(){
/usr/bin/curl "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" 2>/dev/null| awk NR==3 | awk '{print $3}'
}
case $NGINX_COMMAND in
active)
nginx_active;
;;
reading)
nginx_reading;
;;
writing)
nginx_writing;
;;
waiting)
nginx_waiting;
;;
accepts)
nginx_accepts;
;;
handled)
nginx_handled;
;;
requests)
nginx_requests;
esac
}
memcached_status_fun(){
M_PORT=$1
M_COMMAND=$2
echo -e "stats\nquit" | nc 127.0.0.1 "$M_PORT" | grep "STAT $M_COMMAND " | awk '{print $3}'
}
redis_status_fun(){
R_PORT=$1
R_COMMAND=$2
(echo -en "INFO \r\n";sleep 1;) | nc 127.0.0.1 "$R_PORT" > /tmp/redis_"$R_PORT".tmp
REDIS_STAT_VALUE=$(grep ""$R_COMMAND":" /tmp/redis_"$R_PORT".tmp | cut -d ':' -f2)
echo $REDIS_STAT_VALUE
}
main(){
case $1 in
tcp_status)
tcp_status_fun $2;
;;
nginx_status)
nginx_status_fun $2 $3;
;;
memcached_status)
memcached_status_fun $2 $3;
;;
redis_status)
redis_status_fun $2 $3;
;;
*)
echo $"Usage: $0 {tcp_status key|memcached_status key|redis_status key|nginx_status key}"
esac
}
main $1 $2 $3
各种攻击类型
https://mochazz.github.io/2017/09/11/DDOS1/
[svc]容器网络学习索引及网络监控的更多相关文章
- FC网络学习笔记02 -网络配置方法
随着新一代飞机的综合化航电系统对通信需求的不断提高,传统的ARINC429.1553B总线的传输速率分别只有100Kbps和1Mbps,其带宽已远远不 论文联盟 http://Www.LWlm.cOm ...
- Snail—iOS网络学习之得到网络上的数据
在开发项目project中,尤其是手机APP,一般都是先把界面给搭建出来.然后再从网上down数据 来填充 那么网上的数据是怎么得来的呢,网络上的数据无非就经常使用的两种JSON和XML 如今 大部分 ...
- ios网络学习------9 播放网络视频
IOS提供了叫做MPMoviePlayerController MPMoviePlayerViewController两个类.能够轻松用来实现视频播放. MPMoviePlayerViewContr ...
- Neutron网络学习
学习 Neutron 系列文章: 转http://www.cnblogs.com/sammyliu/p/4622563.html (1)Neutron 所实现的网络虚拟化 (2)Neutron Ope ...
- Kubernetes 学习18配置网络插件flannel
一.概述 1.我们在学习docker时知道docker有四种常用的网络模型 a.bridge:桥接式网络 b.joined:联盟式网络,共享使用另外一个容器的网络名称空间 b.opened:容器直接共 ...
- python3.4学习笔记(十七) 网络爬虫使用Beautifulsoup4抓取内容
python3.4学习笔记(十七) 网络爬虫使用Beautifulsoup4抓取内容 Beautiful Soup 是用Python写的一个HTML/XML的解析器,它可以很好的处理不规范标记并生成剖 ...
- 《Unix/Linux网络日志分析与流量监控》获2015年度最受读者喜爱的IT图书奖
<Unix/Linux网络日志分析与流量监控>获2015年度最受读者喜爱的IT图书奖.刊登在<中华读书报>( 2015年01月28日 19 版) 我的2015年新作刊登在< ...
- python3.4学习笔记(十三) 网络爬虫实例代码,使用pyspider抓取多牛投资吧里面的文章信息,抓取政府网新闻内容
python3.4学习笔记(十三) 网络爬虫实例代码,使用pyspider抓取多牛投资吧里面的文章信息PySpider:一个国人编写的强大的网络爬虫系统并带有强大的WebUI,采用Python语言编写 ...
- ios网络学习------4 UIWebView的加载本地数据的三种方式
ios网络学习------4 UIWebView的加载本地数据的三种方式 分类: IOS2014-06-27 12:56 959人阅读 评论(0) 收藏 举报 UIWebView是IOS内置的浏览器, ...
随机推荐
- zabbix安装和配置
- Java笔记(五)泛型
泛型 一.基本概念和原理 泛型将接口的概念进一步延申,“泛型”的字面意思是广泛的类型. 类.接口和方法都可以应用于非常广泛的类型,代码与它们能够操作 的数据类型不再绑定到一起,同一套代码可以应用到多种 ...
- windows安装channels报错的解决方案
windows作为开发机真是让人又爱又恨,总是会遇到各种各样的问题 报错 以安装channels为例:如: pip install channels 时出现: error: Microsoft V ...
- 潭州课堂25班:Ph201805201 django 项目 第三十八课 后台 文章发布,FastDFS安装 配置(课堂笔记)
, .安装FastDFS # 从docker hub中拉取fastdfs镜像docker pull youkou1/fastdfs # 查看镜像是否拉取成功docker images # 安装trac ...
- 潭州课堂25班:Ph201805201 爬虫高级 第十课 Scrapy-redis分布 (课堂笔记)
利用 redis 数据库,做 request 队列,去重,多台数据共享, scrapy 调度 基于文件每户,默认只能在单机运行, scrapy-redis 默认把数据放到 redis 中,实现数据共享 ...
- [NOIP2018]普及组游记
想不到自己还有机会写游记 ——sysky 考完一个月后 DAY -INF 报名 还为了拍照下载了一个PS 特地把自己P白了一点233 花里胡哨得提交了rg.noi.cn DAY -14~-2 停课集训 ...
- C++程序设计方法3:派生类对象的构造和析构过程
基类中的数据成员,通过继承成为派生类对象的一部分,需要在构造派生类对象的过程中调用基类构造函数来正确初始化: 若没有显示调用,则编译器会自动生成一个对基类的默认构造函数的调用. 若想要显示调用,则只能 ...
- h5中input的request属性提示文字字段
<input type="password" class="form-control" name="passWord" require ...
- 关于EL表达式的学习总结
一.EL表达式简介 EL 全名为Expression Language.EL主要作用: 1.获取数据 EL表达式主要用于替换JSP页面中的脚本表达式,以从各种类型的web域 中检索java对象.获取数 ...
- ES6语法(一)let 和 const 命令
1.let命令 与 var 的区别 用法类似于var,但是所声明的变量,只在 let命令所在的代码块内有效. var 声明的变量可以在声明之前使用,值为 undefined ;let命令改变了语法行为 ...