文章来源|MS08067红队手册 本文作者:Hong2x 0x00 CDN基本介绍 CDN的全称是Content Delivery Network, 即内容分发网络 。...CDN系统能够实时地根据网络流量和各节点的连接 、负载状况以及到用户的距离和响应时间等综合信息将用户的请 求重新导向离用户最近的服务节点上。 这里以网宿CDN作为介绍: 工作原理: 1. ...当源站购买及使用了对应的CDN产品后, 将源站中所有的静态资源( 包括HTML 、CSS 、JS、IMG) 等传输至对应的CDN资源服务器中;并把源站的IP与加速域名( CDN厂商提供)进行绑定存储在系统中...CDN 。.../xcdn 0x02 绕过CDN找真实IP 网站根域或者子域找真实IP —般情况下, CDN服务器是按流量收费的, 管理员可能给—些主要业务的网站部署CDN, 根域或者子域业务可能没有部署CDN, 这种情况下可以收集其子域名来尝试获取真实
内容分发网络(Content Delivery Network,CDN)是在现有 Internet 中增加的一层新的网络架构,由遍布全国的高性能加速节点构成。...第一个思考点:CDN是啥? 第二个思考点:CDN架构? 如果你还不了解CDN是什么,没关系,举个生活例子。...第一个思考点:CDN是啥?和仓库类似。...CDN是啥呢,假设业务服务器在北京,服务器上有一张照片,CDN节点把这张照片保存一起,让全国各地用户查看照片时间大致相同,不会因为地域性的不同,看到照片时间差距较大 第二个思考点:CDN架构?...讲了这么多,其实CDN大概也是这么个建设仓库架构演进,层层收敛汇聚,保证全国用户看到照片时间大致相同。
---- 直播CDN介绍 0x1 前言 以下内容是从一个运维的角度看待问题,主要借鉴了某某云和某站的直播架构总结的经验,还加入了一些自己的思考,希望能在CDN这条道路上走得更远。...0x2 直播CDN介绍 一个直播业务,大致分为三步: 主播推流 直播中心接收流 边缘节点为用户提供分发 可以参考云厂商官方文档的介绍。...这种情况对调度和端的依赖度极高,一般只有自建CDN可以这个姿势使用,后面会有详细的调度介绍。...,这时候需要使用ipset命令创建集群,然后在iptables 中使用match-set。...ipset命令把机器到一个cluster中,加入的目的也是为了统计业务带宽使用 0x34 节点上线前的检查部分 节点上线意味着流量的接入,如果你的节点存在异常会导致大量请求失败,造成巨大的影响,因此上线前的检查是不需要做的
整个大体过程如此,接下来我们详细说一下 DNS 与 CDN 相关的工作原理。 DNS如何实现IP查找 为了后面说清楚CDN,这里先介绍DNS的解析过程。当然此类文章网络上已经极多。...DNS的解析分类 DNS有多种解析记录可以设置,我这里介绍三个很常用的记录。 A记录 - 被称为IP指向,用户设置自己域名指到对应的IP主机上。如果想要利用A记录实现 负载均衡 需要主机商的支持。...至于如何实现就近访问的,后面原理部分介绍。...CDN工作原理 在介绍DNS的时候,介绍了客户端是如何获取到IP地址的。那么有了CDN之后,这个过程该怎么处理呢? CDN其实就是放在应用服务器与用户之间的一层缓存。...小结 关于 DNS 的过程,文中是以流程介绍为主,至于更细节的依赖协议、传输过程都忽略了。 关于CDN也是我们经常用到的性能提升手段,后续要写的秒杀相关文章,就会用到它来提升性能。
get 获取远程包 5.go install 生成结果文件并移动到pkg和bin目录下 6.go test 自动读取源码目录*_test.go文件,生成并运行测试用的可执行文件 7.go tool 命令集
介绍 watch字如起名,就是周期性的执行指定的指令,比如要看文件的大小变化,我们如果手动看的话,需要不停的重复执行ls -lh 或 ll -h,但是我们如果使用watch的话就不用重复执行了。...使用方法 1 2 3 4 5 6 7 8 9 10 11 12 选项: -b, - 如果命令具有非零退出,则发出蜂鸣声 -c, - color 解释ANSI颜色和样式序列...从命令输出更改时退出 -n, - interval <secs> 在更新之间等待的秒数 -p, - 以精确的间隔精确尝试运行命令 -t, - no-title ...,因为我们的swap分区被占满了,需要释放swap占用,需要释放一段时间,我们需要观察释放情况,确认什么时候释放完毕,所以我们使用watch命令来周期性的执行查看内存的命令。...-m 可以看出与前一次执行命令显示的结果不同,便会以高亮形式显示
ssh命令多用于登录和文件传输,安全可靠,本文记录ssh命令用法。...是安全的加密协议,用于远程连接Linux服务器 SSH的默认端口是22,安全协议版本是SSH2 SSH服务器端主要包含2个服务功能SSH连接和SFTP服务器 SSH客户端包含ssh连接命令和远程拷贝...scp命令等 工作机制 服务器启动的时候自己产生一个密钥(768bit公钥) 本地的ssh客户端发送连接请求到ssh服务器 服务器检查连接点客户端发送的数据和IP地址,确认合法后发送密钥(768bits...ssh远程执行sudo命令 ssh -t omd@192.168.25.137 sudo rsync hosts /etc/ 传输文件 从服务器上下载文件 scp username@servername...put /etc/hosts /tmp get /etc/hosts /home/omd sftp小结 linux下使用命令
命令介绍 tcpdump 从字面上理解是 dump the traffic on a network,是命令行下对网络进行抓包分析的工具。...Linux 下的命令格式: [image-20201208180212950.png] 常用的参数: -D:列出可用于抓包的接口; -l :使标准输出变为缓冲行形式; -n:不把网络地址转换成名字; -...如Mac下的命令格式: NAME tcpdump - dump traffic on a networkSYNOPSIS tcpdump -AbdDefhHIJKlLnNOpqStuUvxX...分别介绍如下: 协议。包括:tcp、udp、icmp,如果为空则可以匹配所有协议。 目标。包括:src、dst、src or dst、src and dst。 类型。...如果不习惯使用命令行下的抓包工具,也可以使用图形界面的抓包工具,通过 Wireshark使用入门 可以了解更多信息。
aapt 介绍 aapt.exe可以再android sdk中找到 androidSdk/build-tools/aapt.exe 1. aapt list 1.1 v 以列表的形式查看apk中的每个文件的信息...aapt 命令帮助文档 Usage: aapt l[ist] [-v] [-a] file.
例如,要列出所有的Pod对象,可以使用以下命令: kubectl get pods kubectl describe kubectl describe命令用于获取Kubernetes资源对象的详细信息,...例如,要查看一个Pod对象的日志信息,可以使用以下命令: kubectl logs [pod-name] kubectl exec kubectl exec命令用于在运行的Pod对象中执行命令。...使用该命令可以在容器内部运行命令,以便进行故障排除和调试。...sh表示要执行的Shell命令。...kubectl port-forward kubectl port-forward命令用于将本地端口转发到运行的Pod对象中。使用该命令可以访问Pod对象中运行的服务,以便进行调试和测试。
代表当前目录 … 代表上级目录 cp 命令参数介绍 cp 命令的基本格式 [选项] 源文件 目标文件 选项 功能 -d 如果源文件为软链接(对硬链接无效),则复制出的目标文件也为软链接。...mkdir 命令参数介绍 mkdir 命令的基本格式 mkdir [-mp] 目录名 选项 功能 -m 选项用于手动配置所创建目录的权限,而不再使用默认权限 -p 选项递归创建所有目录。...rm 命令参数介绍 rm 命令的基本格式 rm[选项] 文件或目录 选项 功能 -f 强制删除(force),和 -i 选项相反,使用 -f,系统将不再询问,而是直接删除目标文件或目录 -i 和 -f...more 命令参数介绍 more 命令的基本格式 more [选项] 文件名 选项 含义 -f 计算行数时,以实际的行数,而不是自动换行过后的行数。...-c K 这里的 K 表示字节数,该选项用来显示文件前 K 个字节的内容;如果使用 “-K” -v 显示文件名; less 命令参数介绍 less 命令的基本格式 less [选项] 文件名 选项
文章作者:Tyan 博客:noahsnail.com | CSDN | 简书 在Linux中,重命名文件称为移动,mv命令可以将文件重命名或移动。...# 命令形式:mv file1 file2 # 文件重命名 $ mv mvtest mvtest1 $ ls a b c mvtest1 test # 文件移动 $ mv mvtest1...参考文献: Linux命令行与shell脚本编程大全(第三版)
磁盘挂载可以有效解决数据同步与磁盘空间浪费的问题,而且支持不同操作系统之间挂载操作,核心命令为mount,本文介绍该命令。...挂载 权限 使用 mount 命令需要 root 权限,没有root权限的用户或没有使用 --privileged=true 创建的 docker 容器内无法使用 mount 命令挂载磁盘 使用 挂载常用的命令为...-w 将文件系统安装为可写,为命令默认情况。 需要注意的是,挂载点必须是一个已经存在的目录,这个目录可以不为空,但挂载后这个目录下以前的内容将不可用,umount以后会恢复正常。...经常需要root权限才能执行该命令 其余的参数为需要挂载的设备和挂载点 device 要挂接(mount)的设备。 dir 设备在系统上的挂接点(mount point)。...$umount dir $umount device $umount device dir 以上三个命令都可以。
Linux 中的 xargs 命令是一个非常有用的命令行工具,可以将一些参数集合传递给其他命令作为参数,并利用指定的命令进行处理。...它可以帮助我们批量处理文件,执行一些需要多个参数的命令,并且支持并发操作。 通过将 xargs 命令与其他命令进行配合,我们可以通过一条命令批量处理多个文件,而且可以非常灵活地处理多个文件。...代码示例 下面举一些 xargs 命令的具体例子,方便大家了解其使用的方式: 示例1:删除多个文件 你可以使用 find 命令找到需要删除的文件列表,并通过管道传递给 xargs 命令来执行删除操作...,让这些命令依次执行。...总结 xargs 命令是Linux中非常有用的一个命令,它可以帮助我们批量处理文件或者其他任务。在使用的时候,需要注意文件名中可能包含的特殊字符,以及被传递的命令是否支持多个参数的情况。
命令介绍: chkconfig命令用来更新、查询、修改不同运行级上的系统服务。...比如安装了httpd服务,并且把启动的脚本放在了/etc/rc.d/init.d目录下,有时候需要开机自动启动它,而有时候则不需要,因此,就可以使chkconfig命令来进行控制,这个命令就相当于一个开关...ls | grep xinetdK08xinetd #关闭的时候,杀掉K开头的文件S14xinetd #启动的时候,启动S开头的文件 例子7: 执行添加命令时...list | grep test test 0:off 1:off 2:off 3:on 4:off 5:off 6:off 附录: 附1:常用服务介绍...服务器作为用户接口来配置机器 Lpd: # 打印服务器 Mars-nwe: # mars-nwe文件和用于Novell的打印服务器 Mcserv: # Midnight命令文件服务器
SQLmap的基本命令: Options(选项): --version 显示程序的版本号并退出 -h, --help 显示此帮助消息并退出 -v VERBOSE...--os-cmd=OSCMD 执行操作系统命令 --os-shell 交互式的操作系统的shell --os-pwn 获取一个OOB shell,meterpreter
HBase shell是HBase的一套命令行工具,类似传统数据中的sql概念,可以使用shell命令来查询HBase中数据的详细情况。...安装完HBase之后,如果配置了HBase的环境变量,只要在shell中执行hbase shell就可以进入命令行界面,HBase的搭建可以参考我的上一篇文章:hbase分布式集群搭建 HBase介绍...使用命令hbase shell进入命令界面。通过执行 help可以看到命令的帮助信息。 HBase的表结构 HBase以表的形式存储数据。表有行和列组成。...Hbase shell HBase Shell的一些基本操作命令,列出了几个常用的HBase Shell命令,如下: 名称 命令表达式 查看存在哪些表 list 创建表 create '表名称', '列名称...,使用help获得全部命令的列表,使用help ‘command_name’获得某一个命令的详细信息。
语法格式 maven 命令的格式为 mvn [plugin-name]:[goal-name] 可以接受的参数如下: -D 指定参数,如 -Dmaven.test.skip=true 跳过单元测试;...-P 指定 Profile 配置,可以用于区分环境; -e 显示maven运行出错的信息; -o 离线执行命令,即不去远程仓库更新包; -X 显示maven允许的debug信息; -U 强制去远程更新...常用maven命令 创建maven项目:mvn archetype:create 指定 group:-DgroupId=packageName 指定 artifact:-DartifactId=projectName...DgroupId=packageName -DartifactId=projectName -Dversion=version -Dpackaging=jar -Dfile=path web项目相关命令...jar 只测试而不编译,也不测试编译: mvn test -skipping compile -skipping test-compile ( -skipping 的灵活运用,当然也可以用于其他组合命令
npm 从5.2版开始,增加了 npx 命令。它有很多用处,本文介绍该命令的主要使用场景。 ? Node 自带 npm 模块,所以可以直接使用 npx 命令。万一不能用,就要手动安装一下。...由于 npx 会检查环境变量$PATH,所以系统命令也可以调用。 # 等同于 ls $ npx ls 注意,Bash 内置的命令不在$PATH里面,所以不能用。...$ npx -p node@0.12.8 node -v v0.12.8 上面命令先指定安装node@0.12.8,然后再执行node -v命令。 -p参数对于需要安装多个模块的场景很有用。...-c参数可以将所有命令都用 npx 解释。有了它,下面代码就可以正常执行了。...举例来说,npm 提供当前项目的一些环境变量,可以用下面的命令查看。 $ npm run env | grep npm_ -c参数可以把这些 npm 的环境变量带入 npx 命令。
为了克服当前CDN功能的限制并满足未来需求,出现了两个关键趋势:边缘CDN和虚拟CDN(vCDN)。 内容提供商希望在边缘建立虚拟化CDN功能 ?...边缘CDN 边缘CDN导致CDN服务器的分布更大。如今,大多数CDN功能都发生在IXP上,但是这些功能正越来越多地转移到移动网络的边缘站点。...vCDN vCDN 是虚拟化的CDN软件应用程序,可以在专有,裸机,虚拟化或基于容器的基础架构或电信MEC平台上 运行CDN工作负载 。以前,CDN软件平台与底层硬件紧密结合在一起,使其变得不灵活。...,但是某些提供商将更喜欢专有(v)CDN模型,其中虚拟化的软件平台在CDN提供商的专用硬件上运行CDN工作负载,或者在裸机硬件上运行CDN功能没有虚拟化层。...他们可能拥有自己的CDN,以优化其内容质量,但并不试图从其CDN服务中获得直接收益。 ? 这些业务模式将如何在边缘发生变化,并允许移动运营商通过CDN获利? ? 这些业务模型也将存在于边缘。