关于ip:静态IP代理和动态IP代理的优缺点有哪些

动态IP代理和动静IP代理是两种常见的IP代理类型,它们有不同的特点和利用场景。本文将比拟动态IP代理和动静IP代理的优缺点,帮忙读者更好地理解这两种代理类型,不便在抉择代理服务时做出理智的决策。 一、动态IP代理 动态IP代理是指代理服务器的IP地址是固定不变的,能够长时间应用。因为其固定的IP地址,动态IP代理绝对于动静IP代理更加稳固和牢靠。动态IP代理通常用于须要频繁拜访同一网站或服务的场景,如爬虫、数据采集、搜索引擎优化等。 长处: 1.稳定性高:动态IP代理的IP地址固定不变,不会因为IP地址的更改而影响应用。 2.安全性高:动态IP代理能够进行身份验证和受权,防止未经受权的用户拜访。 3.访问速度快:因为固定IP地址的存在,动态IP代理能够优化访问速度,进步数据采集和爬取的效率。 毛病: 1.费用高:绝对于动静IP代理,动态IP代理的费用较高。 2.隐衷性差:因为应用固定的IP地址,动态IP代理的隐衷性较差,易于被追踪。 二、动静IP代理 动静IP代理是指代理服务器的IP地址是动态分配的,每次拜访时IP地址都会更改。因为其随机性和不确定性,动静IP代理绝对于动态IP代理更具备隐衷性和安全性。动静IP代理通常用于须要频繁更换IP地址的场景,如匿名拜访、网络测试等。 长处: 1.费用低:绝对于动态IP代理,动静IP代理的费用较低。 2.隐衷性高:因为IP地址是动态分配的,动静IP代理的隐衷性更高,难以被追踪。 3.易于更换:因为IP地址是动态分配的,动静IP代理更容易更换IP地址,防止被封禁。 下面就是对于动态ip和动静ip的优缺点的相干介绍了,心愿能够为大家带来帮忙,

September 25, 2023 · 1 min · jiezi

关于ip:如何选择IP代理IP代理带来的好处有哪些

IP代理是一种网络技术,它可能爱护用户的实在IP地址,让用户在网络上的流动变得更加匿名和平安。在现在的互联网时代,隐衷和平安问题越来越受到人们的关注,应用IP代理曾经变成了一种很广泛的做法。 IP代理的益处有: 进步网络访问速度:你能够抉择一个位于指标服务器左近的IP代理,这将进步你的网络访问速度。 匿名性:IP代理能够为你暗藏实在IP地址,能够帮忙你匿名地浏览互联网。 安全性:IP代理能够爱护你的计算机免受一些网络攻击,如DDoS攻打等。 拜访限度的解决:一些网站或服务可能会限度地区的拜访,应用IP代理能够帮你拜访这些限度的资源。 数据采集:IP代理能够让你在数据采集过程中更快、更顺畅地取得数据。 抉择IP代理的注意事项: IP代理的稳定性:抉择一个稳固牢靠的IP代理,以确保你的网络拜访不会受到影响。 IP代理的品质:抉择提早小、速度快、IP地址随机的IP代理,以取得更好的匿名成果。 IP代理的隐衷政策:确保IP代理提供商的隐衷政策合乎你的要求,能够爱护你的集体信息安全。 IP代理的价格:抉择价格合理、与品质相符的IP代理,以节省成本并取得更好的体验。 IP代理是一种十分有用的网络技术,它可能帮忙咱们爱护实在IP地址、进步网络安全性进步网络速度和改善SEO成果。若是你在互联网上流动频繁,去应用流冠IP代理是一个很好的抉择。

September 20, 2023 · 1 min · jiezi

关于ip:使用代理IP的好处和坏处

应用代理IP的益处: 进步网络安全性:应用代理服务器能够暗藏实在IP地址,减少网络安全性,防止被攻打或者跟踪。 冲破网络限度:有些网站或者利用可能会限度某些地区的IP地址拜访,应用代理服务器能够解除这种限度。 爱护隐衷:应用流冠代理服务器能够暗藏实在IP地址,减少隐衷爱护,避免个人信息泄露。 进步访问速度:有些代理服务器在网络连接品质比拟好的状况下,能够提供更快的访问速度。 改善数据分析:在数据分析畛域,应用代理服务器能够获取跨地区的数据,使剖析更加全面和精确。 应用代理IP的害处: 升高网络速度:应用低质量的代理服务器可能会导致网络速度变慢。 平安危险:应用不平安的代理服务器可能会导致个人信息泄露或者被攻打。 难以获取精确地位信息:代理服务器可能会屏蔽掉实在的地位信息,对于某些须要准确地位信息的利用来说,可能会导致误差。 所有网络流量都通过代理服务器:所有的网络申请都会通过代理服务器,如果代理服务器挂了或者呈现故障,将无法访问网络。 使用不当会被封禁:一些网站会禁止应用代理服务器拜访,如果不小心被封禁,将无奈失常拜访该网站。

September 19, 2023 · 1 min · jiezi

关于ip:手把手教你实现显示IP归属地

@TOC 近年来,依据《国家互联网用户账号名称信息管理规定》要求互联网用户账号服务平台标注IP地址属地信息,微信公众号、抖音、知乎各大平台纷纷都上线了IP归属地的性能。本文就带大家实现该性能,国内的用户准确到省份,国外用户准确到国家。 实现原理那么如何依据IP地址查找到具体的归属地信息呢?答案是:通过 自治零碎(Autonomous System)。 互联网是由不同网络组成的网络,自治零碎是组成 Internet 的大型网络,连贯到 Internet 的每台计算机或设施都连贯到一个 AS。而每一个自治零碎都会有一个编码,咱们称之为 ASN。能够认为 AS 相似于一个城镇的邮局。 邮件从一个邮局到另一个邮局,直到达到正确的城镇为止,而后该城镇的邮局将在该城镇内传递邮件。每个 AS 都管制一组特定的 IP 地址,就像每个镇的邮局负责将邮件传递到该镇内的所有地址一样。 通常,每个 AS 由单个大型组织(例如 Internet 服务提供商(ISP)、大型企业技术公司、大学或政府机构)经营。 到这里,咱们能够捋分明这样一个逻辑关系:IP地址 -> 地址块 -> 自治网络编码(ASN) -> 组织 -> 国家。 通过 IP 地址,咱们就能够定位到一个大抵的地理位置,例如:北京朝阳区、深圳南山区等。例如我当初的 IP 地址就归属于编码为 AS4xxx 这个自治网络,通过这个 ASN 能够晓得地位在中国深圳,这个 ASN 编码所属的组织为 中国电信。 然而,要实现这样一个查找性能,首先得要有一个IP地址归属地数据库。网上找了下,以前淘宝网有一个开源的接口API开源调用,但不晓得为何,近一两年,该接口地址曾经下线不能应用了。咱们能够通过调用昂焱数据平台提供的IP地址归属地接口来实现此性能。IP地址归属地查问次要针对以后理论使用最多的IPv4地址,依据IP地址查问其归属地。IP地址归属地查问实用于网络定位、网络跟踪、网络排查等相干场景。 获取IP地址首先,须要获取客户端IP地址 获取IP地址办法: /** * 获取IP地址 * * 应用Nginx等反向代理软件, 则不能通过request.getRemoteAddr()获取IP地址 * 如果应用了多级反向代理的话,X-Forwarded-For的值并不止一个,而是一串IP地址,X-Forwarded-For中第一个非unknown的无效IP字符串,则为实在IP地址 */ public static String getIpAddr(HttpServletRequest request) { String ip = null; try { ip = request.getHeader("x-forwarded-for"); if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) { ip = request.getHeader("Proxy-Client-IP"); } if (StringUtils.isEmpty(ip) || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { ip = request.getHeader("WL-Proxy-Client-IP"); } if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) { ip = request.getHeader("HTTP_CLIENT_IP"); } if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) { ip = request.getHeader("HTTP_X_FORWARDED_FOR"); } if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) { ip = request.getRemoteAddr(); } } catch (Exception e) { logger.error("IPUtils ERROR ", e); } return ip; }调用IP归属地接口:public class Test{ // 申请的昂焱数据IP归属地接口地址 public static final String URL = "https://www.ayshuju.com/data/ip/address"; // 申请的密钥 public static final String APPKEY = "申请的密钥"; // 申请客户端 public static OkHttpClient client = new OkHttpClient(); public static void main(String[] args) throws IOException { RequestBody formBody = new FormBody.Builder() .add("appKey", APPKEY) .add("ip", "117.186.0.233") .build(); // 执行post申请 String result = doPostByFormData(URL, formBody); System.out.println(result); } /** * @param url url * @throws IOException */ public static String doPostByFormData(String url, RequestBody body) throws IOException { Request request = new Request.Builder().url(url).post(body).build(); try (Response response = client.newCall(request).execute()) { return response.body().string(); } }}更多开发API及代码工具请拜访【昂焱数据平台】 ...

March 13, 2023 · 2 min · jiezi

关于ip:IP设计是什么为什么它很重要

半导体IP是芯片的重要基石之一,也是集成电路设计与开发中不可或缺的外围因素。它是一种已验证的、可反复利用的、具备某种特定性能的集成电路模块,通常由第三方开发。 浏览本文,您将理解到什么是IP,正确设计IP的重要性以及如何让您的半导体设计以IP为核心。 龙智作为DevSecOps研发平安经营一体化解决方案供应商、Perforce受权合作伙伴,继续关注版本控制畛域动静与倒退,为您进步最新洞察与最佳实际参考,帮忙大型开发团队更好地进行数字资产治理与合作,晋升研发效率。立刻分割咱们,理解芯片开发、半导体等畛域的数字资产治理最佳实际与案例。 知识产权(或称为IP)在半导体开发中至关重要。本文将向您具体介绍什么是知识产权(IP)、正确设计IP的重要性以及如何让您的半导体设计以IP为核心。 什么是IP设计?IP设计是指片上零碎(SoC)设计中应用的知识产权外围。IP设计实质上是整个SoC设计的一部分。近年来,SoC设计产生了天翻地覆的变动。以前,您会领有大量独特的外部设计,以及大量通过其余形式购买或取得的内部IP。而当初,大部分SoC是外部和第三方IP集成大量高度差异化的产品特定设计。 这也促成了基于平台设计的倒退,即一系列产品都基于一个设计,只需进行大量定制即可辨别系列中的各种产品。因为只需大量定制,这些平台更容易设计,而且外围性能能够由现有的IP组装而成,这使得它们能够迅速推向市场。 正因为此,Top半导体公司曾经开始高度重视这些IP的治理、配置和集成形式。 为什么IP设计很重要当初的IP设计比以往的任何时候都重要,因为消费者的需要须要疾速的产品开发,而且因为须要包容外部和内部IP,生态系统也变得复杂。IP是整个SoC设计的要害,它是一直倒退演进的。危险是重中之重。您必须采纳结构化的IP设计办法,否则您的整个SoC设计将面临不可承受的危险程度。 只需一个坏IP,即可毁坏您的SoC。 你不能冒这个险。这就是为什么咱们须要从端到端的角度对待你的IP。您必须应用像Methodics IPLM这样的IP生命周期治理解决方案,以通明、可跟踪的形式治理它们的整个生命周期和应用状况。 这须要以IP为核心的设计观。 如何使半导体设计以IP为核心因为IP在半导体设计过程中起着越来越重要的作用,因而,将整个设计作为一个IP汇合来治理是一个好主见。 以下是如何让您的设计围绕IP进行的办法: 定义IP首先,什么是IP?在Methodics IPLM中,IP是任何可能实现设计的货色。这包含传统上被视为IP的设计模块: 从第三方供应商处购买和应用的功能模块,无需批改由企业内的核心团队设计的功能模块这还包含不太传统的IP设计模块,例如专门为我的项目创立的惯例设计模块。您甚至能够将脚本或CAD环境视为我的项目中的IP。 但IP不仅仅是文件,IP还是: 硬件、固件和软件的设计文件的汇合与每个IP关联的元数据元数据必须从通常保留它的孤岛中联结起来,并与设计的IP构建块相关联。 在开始之前,您须要定义您的IP设计。 构建分层依赖关系定义IP后,您须要构建分层依赖关系。这意味着每个IP都能够有其余IP作为依赖项。例如,在Methodics IPLM中,您会有: 一个顶层IP 一组子系统IP子系统IP的依赖关系对立数据管理最初,您还须要集成和对立IP设计与数据管理系统。鉴于设计社区的多样性以及我的项目的不同需要,您可能会应用多个数据管理系统。其中一些,比方Git,可能会被须要轻松合作的设计团队应用。然而它们不能很好地满足源代码之外的治理需要。 Perforce Helix Core能够很好地解决大型二进制文件和跨站点复制。此外,它还能够随着公司倒退和团队壮大而轻松扩大,更好地满足企业的倒退须要。Perforce Helix Core提供了对立数据管理的路径,并通过Helix4Git将Git我的项目引入您的流水线。 并且,Perforce Helix Core和Helix4Git与Methodics IPLM齐全集成。 例如: Methodics IPLM治理半导体设计中的简单文件关系。Perforce Helix Core解决EDA工具中常见的大型二进制文件和数百万个文件。Helix4Git能够增加到任何Git环境中,以进步性能,且能够无缝扩大,反对一直增长的寰球Git团队。这些工具独特提供了一个弱小的解决方案,能够将以IP为核心的设计与您的数据管理系统集成并对立起来。 应用Methodics IPLM确保以IP为核心的设计Methodics IPLM提供了确保以IP为核心的半导体设计并放慢上市工夫的最佳形式。 应用Methodics IPLM,您能够: 治理残缺的IP生命周期将IP设计与数据管理相集成管理工作区并主动收集元数据创立所有IP设计的繁多物料清单(BoM)此外,Methodics IPLM还提供IP公布跟踪、弱小的IP目录、对模仿和数字IP的反对、“父子”感知缺点跟踪、主动告诉,并反对应用RESTful API进行定制。 作者简介: **迈克·芒西(Michael Munsey)营销、企业策略和业务倒退副总裁,Perforce Methodics IPLM** 迈克·芒西在工程设计自动化和半导体公司领有超过25年的教训。在退出Methodics之前,迈克是Dassault Systemes半导体、软件生命周期治理和物联网的策略和产品营销高级总监。除了策略计划外,他还负责业务倒退、合作伙伴关系以及汽车电子和并购等跨行业打算。迈克的职业生涯开始于IBM,是一名ASIC设计师,之后转到EDA,他曾在营销、销售和业务开发方面负责过各种高级和执行级别的职位。他是Sente和Silicon Dimensions开创团队的成员,还曾在Cadence、VIEWLogic和Tanner EDA等出名公司工作。迈克取得了塔夫茨大学电气工程学士学位。文章起源:https://bit.ly/3g2RKAa

October 17, 2022 · 1 min · jiezi

关于ip:配置以及分配网络IP时候需要注意的点

IPv4当中有些地址段有些是保留的,有些是有非凡用处有些时候咱们在批改IP的时候或者配置路由的时候须要留神一些IP是不能被随便配置的当IP是以下值的时候须要特地留神一下 0.0.0.0/80.0.0.0不是一个真正意义上的IP地址,示意的是这样一个汇合,所有未知(本机的路由表里没有特定条目指明如何达到)的主机和目标网络0.0.0.0/8能够示意本网络中的所有主机,也可示意本网络上的某个特定主机,0.0.0.0/8是IANA(互联网号码调配局)本地辨认地址,1981年9月首次调配时即为IANA保留地址,保留用于自我辨认 100.64.0.0/10运营商级(Carrier-grade)NAT保留IP地址 127.0.0.0/8保留用于本地回环(loopback)地址,示意本机,只管只应用127.0.0.1这一个地址,但地址127.0.0.0/8(127.0.0.0到127.255.255.255)均予于保留,此地址块的任何地址都将环回到本地主机中且都绝不会呈现在网络中 169.254.0.0/16链路本地地址,如果主机应用了DHCP性能主动取得一个IP地址,如果DHCP服务器产生故障,或响应工夫太长而超出了一个零碎规定的工夫,计算机操作系统会调配这样一个地址,如果主机IP地址是一个这样的地址,本机网络不能失常运行了 191.255.255.255播送地址,不能调配 224.0.0.0/4组播地址,D类网络,保留用于组播(多播)通信,从224.0.0.0到239.255.255.255都是这样的地址,224.0.0.1特指所有主机,224.0.0.2特指所有路由器 240.0.0.0/4E类地址,保留地址,不能调配,由IP地址管理机构预留,未调配作为公开IP或者私用IP 255.255.255.255/32限度播送地址,不能调配

September 17, 2022 · 1 min · jiezi

关于ip:IPv5是什么意思到底有没有IPv5

前言:IPv5的确存在,只不过IPv5在成为规范之前就被放弃了,随后咱们把眼光放在了IPv6上。 随着社会的提高以及通信模式的日益宽泛,使人们对信息共享的广度和深度都有了更高的要求,这是网络互连的次要动机。通常咱们所说的网络,就是一个数据通信零碎,它能够把扩散的计算机和终端设备连接起来,以达到数据通信和资源共享的目标。 一个计算机网络由通信子网和资源子网独特组成。然而许多网络都是独立的实体,仅为某一团体服务,没有一个网络能满足所有的用处,因而网络互连就显得十分重要。为实现网络互连,国际标准化组织提供开放式系统互连(Open System Interconnection,OSI)参考模型。 OSI可使各种类型的计算机设备在物理上相互连接并进行通信以达到互相凋谢的目标,它由开放系统、利用实体、连贯及物理媒体四局部组成,而TCP/IP协定则成为计算机网络先进规范。  互联网协议其实也是TCP/IP协定,艰深来讲是一组规定,用于治理信息包如何通过网络传输。什么是IPv5?而IPv5是互联网协议 (IP)的一个版本,然而IPv5从未被正式采纳为规范。当初计算机网络应用版本4,通常称为IPv4。 IPv5则是计算机网络应用版本5。IPv5从未成为官网协定,所谓的 IPv5 只不过是以不同的名称流传:互联网流协定,或简称ST。IPv5互联网协议是由 Apple、NeXT 和 Sun Microsystems开发的一种流式传输视频和语音数据的办法,是具备实验性的摸索。IPv5为未推广的起因在于IPv5 地址限度IPv5从未过渡到公共应用,很大水平上是因为其 32 位的限度。因为IPv5应用了IPv4的32位寻址,这是次要的问题。IPv4 地址的格局为###.###.###.###,由四个数字八位字节(计算中的数字信息单位,由八位组成)组成,每组范畴从0到255 并以句点分隔然而这种格局只有43亿个互联网地址。 然而随着计算机网络的迅猛发展及人们日常生活的宽泛应用,欧洲网络协调核心(RIPE NCC)于2019年11月正式发表:寰球所有43亿个IPv4 地址已全副调配结束。这意味着现有的 IPv4 地址资源已无奈再调配给 ISP(网络服务提供商)。 如果应用IPv5,同样的32位寻址,仍然会受到限制,并不能解决互联网IP地址枯竭的难题。因而IPv5在成为规范之前就被放弃了,咱们则把眼光放在了IPv6上。IPv6是IETF设计的用于代替IPv4的下一代IP协定。 应用IPv6,能够极大地减少可用IP地址的数量,彻底解决了IP地址资源枯竭的问题。IPv6的16字节(128bit)地址采纳如下记法:每2个字节一组,共分8组,每组采纳16进制示意办法,组与组之间用冒号“:”隔开。例如,8000:0000:0000:0000:1234:5678:90ab:defo.然而IPv5也有它的劣势。 IPv5互联网协议在放弃通信的同时在特定频率上传输数据包十分无效。它能够成为了开发IP语音或VoIP等技术的根底,该技术能够用于互联网上的语音通信。 学者所见所期,不可不远且大也。及夫施于用,则必有其渐。科技的倒退是在摸索中前行,在摸索的路线上可贵的是面对失败依然有更高的谋求。学林探路贵涉远,无人迹处有奇迹,正如IPv5没有技术性的冲破,才会有IPv6的呈现。

August 15, 2022 · 1 min · jiezi

关于ip:baiduspider-ASN-与-IP-地址段总结归纳

搜索引擎蜘蛛个别指网络爬虫,又称为网页蜘蛛或网络机器人,是一种依照肯定的规定主动地抓取万维网信息的程序或者脚本。 百度蜘蛛(baiduspider),是百度搜索引擎的一个主动程序。它的作用是拜访收集整理互联网上的网页、图片、视频等内容,而后分门别类建设索引数据库,使用户能在百度搜索引擎中搜寻到您网站的网页、图片、视频等内容。 百度蜘蛛并没有颁布本人的 IP 地址段,咱们在经营网站的时候,常常会遇到混充爬虫来抓取咱们的网站,这个时候咱们就须要通过一些工具来辨认这些爬虫是真正的 baiduspider 还是 fake baiduspider(伪造百度蜘蛛,或者伪造 baiduspider),爬虫辨认站长在经营过程中总结和演绎了 baiduspider 的爬虫 IP 地址段与 ASN,心愿能够帮到大家。 baiduspider ASNAS4808AS55967AS23724AS4837AS137702如果不晓得真么查问某个 IP 的 ASN,咱们能够应用 IP 地址查问查问 IP 具体的 ASN。 baiduspider IP 地址段以及归属地61.135.0.0/16 北京市联通123.125.0.0/16 北京市联通111.206.0.0/16 北京市联通180.76.0.0/20 香港百度云180.149.128.0/19 北京市电信220.181.0.0/16 北京市电信36.110.128.0/17 北京市电信124.164.0.0/14 山西省阳泉市联通116.179.0.0/16 山西省阳泉市联通180.97.0.0/18 江苏省南京市电信百度网讯下面并不是所有的 IP 地址段都是 baiduspider 的 IP,外面可能有一部分 IP 是 baiudspider 的 IP,如果在此 IP 地址段中,不确定是不是 baiduspider 的 IP 地址,能够到爬虫IP查问确认一下。 同时提供 CIDR 转换 IP 地址段工具将 IP 地址段转换成 IP 范畴。 baiduspider User-agentMozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)Mozilla/5.0 (Linux;u;Android 4.2.2;zh-cn;) AppleWebKit/534.46 (KHTML,like Gecko) Version/5.1 Mobile Safari/10600.6.3 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)Mozilla/5.0 (compatible; Baiduspider-render/2.0; +http://www.baidu.com/search/spider.html)Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1 (compatible; Baiduspider-render/2.0; +http://www.baidu.com/search/spider.html)此处只列举出这些,更多的能够到 Baiduspider 查问。 ...

July 30, 2022 · 1 min · jiezi

关于ip:如何在-MAC-电脑上查找-IP-地址

咱们如何在 MAC 电脑上查问本人的 IP 地址,以及查找 IP 地址的归属地呢? 上面是一些具体的步骤。 Mac 查找本人的 IP 地址咱们在 Mac 零碎桌面上,点击零碎偏好设置进入零碎偏好之后,咱们抉择网络在网络界面咱们抉择以太网,您的 IP 地址会显示在右侧,如下图所示: 通过终端查找 Mac 的 IP 地址 通常技术人员会应用终端查找 Mac 的地址,上面是如何通过 Mac 的终端查找 IP 地址。 启动位于 /Applications/Utilities/ 中的终端输出以下命令:ifconfig |grep inet咱们将会看到如下内容: inet 10.0.0.15 netmask 255.255.255.0 broadcast 10.0.0.255inet6 fe80::5054:ff:fe15:a5ba prefixlen 64 scopeid 0x20<link>inet 127.0.0.1 netmask 255.0.0.0inet6 ::1 prefixlen 128 scopeid 0x10<host>第一行就是咱们的 IP 地址,第三行是咱们机器环回地址。第二行和第四行都是 IPv6 的局域网地址。 在 Mac 上查找咱们的公网 IP 地址您的公网 IP 地址(内部地址)通常是面向全世界播送的,而方才看到的都是咱们的外部 IP 地址(局域网 IP 地址)。 咱们能够通过 IP 查问 这个工具查找咱们的公网 IP 地址,如下图所示: ...

July 30, 2022 · 1 min · jiezi

关于ip:yandexbot-ip-地址段

YandexBot 是 Yandex 的搜索引擎的爬虫。Yandex 是一家俄罗斯互联网公司,在俄罗斯经营最大的搜索引擎,在该国领有约 60% 的市场份额。截至 2012 年 4 月,Yandex 排名寰球第五大搜索引擎,每天有超过1.5 亿次搜寻,访客超过 2550 万。 常常有网友问我如何屏蔽 yandexbot,或者如何查问 yandexbot ip range(yandex ip 地址段)? 这篇文章中我具体介绍一下这两个问题。 如何屏蔽 yandexbot咱们能够通过 robots.txt 屏蔽 yandexbot 的爬虫,上面是示例: User-agent: YandexDisallow: /这样咱们就屏蔽了 yandexbot 抓取所有页面。 如果咱们只想 yandexbot 抓取局部页面,上面是写法示例: User-agent: YandexAllow: /publicDisallow: /下面除了 /public 页面容许被 yandexbot 拜访之外,其余都禁止 yandexbot 爬虫抓取。 通过 IP 地址段屏蔽 yandexbotyandexbot 的 ASN 是 AS13238、AS208722 这两个,咱们能够通过 ASN 查问获取 ASN 的 IP 地址段。 将查问的 IP 地址退出到黑名单中就能够屏蔽 yandexbot 的目标了。 同时咱们能够找到爬虫查问这个工具,间接输出 IP 地址,就能够判断 IP 是否属于 yandexbot 的。 ...

July 13, 2022 · 1 min · jiezi

关于ip:怎么查看网站的服务器ip怎样查看某个网站的IP地址

怎么查看某个网站的IP地址 1、首先在电脑的左下角的电脑小图标能够点击键盘上的小窗口按键。2脑开始图标后会弹出一个菜单,在菜单中会有一个输入框能够输出名称,来搜寻程序或文件。3、在输入框中输出“cmd”英文字母而后回车。4、在输出cmd回车后会关上exe文件,弹出一个dos窗口。5、在dos窗口中光标闪动的中央输出ping 英文字母。6、在ping字母后 加一个回车,而后输出想要查问ip地址的网址。7、在输出好本人想要查问的网址后回车如果网站是失常的就会显示该网址的ip地址。1、首先能够"windows+R”组合键,口调进去2、调出运行窗口之后,在运行窗口外面的关上一栏中输出cmd运行命令击确定。3、确定之后,就会弹出一个cmd的运行窗口,在CMD命令窗口当中输出nslookup这个命令,输出之后还须要在前面打一个空格键,而后按回车。4、将须要查看的网站IP的网址复制粘贴,按回车键,此时就会弹出一列的数据,在界面里有一个“非权威应答”这句话的上面就是网站的IP了。本答复被网友驳回 查看IP地址步骤如下:1.首先按住键盘上的开+R键,而后会弹出一行窗口。2.再在运行窗口里入CMD命令提示符,CMD是零碎程序输出命令提示符的程序,而后点击回车键。3.按了回车键过后,电脑就会弹出一个命令窗口,这个窗口就是输出CMD命令。4.而后在CMD命令窗口当中输出nslookup这个命令。而后在前面打一个空格。5.按了空格键后输出 网站的域名 记住是域名 比方www.baidu.com,而后按回车。6.而后再按回车键,命令窗口外面就会呈现界面。7.之后就会看到如图所示的界面,在界面里有一个“非权威应答”这句话的上面就是网站的IP了。本答复被网友驳回 操作如下:1、首先进入要查看的网页,复制最地址栏内容;2、始菜单中找到“运行”单机;3、此时弹出“运行”的工作栏,在“关上”前面填写框填写“cmd”后确定;4、呈现命令提示符界面;5、在前方输出“ping”后按一次空格键,而后粘贴之前复制的地址;6、最初,此网站的IP地址就呈现在如图所示区域。扩大材料:如何查找QQ好友的IP地址: 1、首先,在开始菜单中搜寻“资源”,而后关上资源监视器;2、而后切换到“网络”选项,开展“网络流动”这一栏;3、第三,选qq.exe就能够在网络流动这一栏里看到所有qq的网络连接;4、第四,右键单击“抉择列”;5、勾选“地址“发送“接管”其中地址就是ip地址;6、关上QQ,关上所要查看其IP地址的好友对话框,发送一个你本人珍藏的表情;7、你就会看到这里多进去一个ip地址,而个别这个地址就是你的好友的ip地址。8、最初,搜寻要查问的ip地址,你会卡到ip的地理位置。本答复被网友驳回 利用PING语言能够在电脑上查看某个网站的IP地址体操作请参照以下步骤。1、点击电脑任务栏中始”图标,进入到开始菜单中。2、而后在开始菜单中找到“运行”选项,而后进行点击。3、在运行窗口中输出“ping+网站地址”,比如说搜素百度的IP地址就要输出“ping www.baidu.com”。4、输出完后,点击窗口上面的“确定”按钮进行确定。5、那么在运行窗口中就会显示网站的IP地址。实现以上设置后,即可查看某个网站的IP地址。本答复被网友驳回 怎么查问网站ip地址 电脑的ip地址怎么查查网址的真正IP: 1、在“开始点击“运行”,输出“CMD”,DOS零碎。 输出PING+你要IP地址的网站域名,回车。 外面会有一个4个8位的IP地址,相似于:255.255.255.0。 2、点开:www.ip138.com。在外面的域名框里输出你要查IP的地址,点击查问,就能够显示IP及服务器提供商了。然而这一种不太筹备。 如果有其余问题,能够诘问。心愿对你有怕帮忙,望驳回。本答复被网友驳回CMD 命令符=-= netstat -an 这里有你电脑关上的端口还有连贯上的IP =-= 你关上了网页必定有连贯,这里必定就有显示 用CMD运行ping命令就能够进去,例如想查看百度这个网站的ip地址,能够ping baidu.com你是想要拜访的ip呢,还是想晓得网站可能部署在多台服务器的所ip。 如果是后者,域名只能对应一个ip,就算负载平衡所设置的,也只能显示一个。 如果是前者,那属于网站访问量查问。 如何查问网站的IP地址是多少? 电脑的ip地址怎么查能够间接在查找IP的网站查问,具体如下:1.点击开始2.在开始界面,关上你览器3.在搜寻中输出“IP地址查问 站长工具”字样,并点开如图所示的链接。4.在对应栏目中输出须要查问的网站网址,点击查问。以百度主页网址为例。5.在IP/域名www.baidu.com的信息处能够看到相干的IP地址本答复被网友驳回 以搜狗浏为例:1、进入搜狗浏览器页,将网站的网址复制下来:2、回到后,用“WIN+R”操作进入运行界面:3、输出“cmd”,点击确认: 4、就进入了命令提示符界面:5、在前面输出“ping 123.sougou.com”,回车确认: 6、如下图,搜狗浏览器的IP地址就进去了: 这就是查问网站IP地址的办法,IP地址是IP协定提供的一种对立的地址格局,它为互联网上的每一个网络和每一台主机调配一个逻辑地址,以此来屏蔽物理地址的差别。参考资料:百度百科-IP地址本答复被网友驳回 1、首先在电脑屏幕击“开始”菜单,“命令提醒选项并单击关上。2、接弹出对话框中输出 ping+空格+想要查IP的网站网址,并点击回车,这里用百度主页为例。3、回车当前,提醒栏中立即就会显示出这个网址的IP地址,如图中红框所示。4、或者也能够用 nslookup+空格+网址 查问网站的IP地址,同样也能够看到相应的IP地址。5、最初验证准确性,将失去的IP地址输出到浏览器地址栏中,能够看到浏览器主动切换到了百度主页的页面上。本答复被网友驳回 1、点击“开始单,找到“命令符”选项并单击关上:2、在弹话框中输出 ping+空格+网址,击回车,这里用百度主页为例:3、回车当前,提醒栏中立即就会显示出这个网址的IP地址,如图中所示:4、或者也能够用 nslookup+空格+网址 查问网站的IP地址,同样也能够看到相应的IP地址:5、最初,咱们将失去的IP地址输出到浏览器地址栏中,就会主动切换到百度主页的页面上。本答复被网友驳回 如何查问网站的IP地址和网站服务器所在地 批量查问域名/IP所在地 IP域名归属地查问工具- SEO查1、按键盘“开始+R”键,零碎的运行窗口,输出“CMD击,点击“确定”按钮。 2、随后会弹出彩色的“命令提示符”窗口,在命令窗口中输出 nslookup (www.网站域名.com) , nslookup 前面带上要查问网站的域名。 注:这个命令是零碎专门用于解析网站域名 IP 的一个外部命令。 3、而后按键盘上的“回车”键,即可看到此网站的 IP 地址了。本答复被网友驳回 如何查问网站IP地址 电脑的ip地址怎么查网址的真正IP: 1、在“开始”里点击“运行”入“CMD”,进入DOS系 输出PING+你要查看IP地址的域名,回车。 外面会有一个4个8位的IP地址,相似于:255.255.255.0。 2、点开:www.ip138.com。在外面的域名框里输出你要查IP的地址,点击查问,就能够显示IP及服务器提供商了。然而这一种不太筹备。 如果有其余问题,能够诘问。心愿对你有怕帮忙,望驳回。本答复被网友驳回用站长工具。 怎么找到网站的web服务器的IP地址 ...

July 5, 2022 · 1 min · jiezi

关于ip:关于IP定位查询接口的测评Ⅰ

导语明天给大家介绍对于国内外数据服务商的IP定位查问收费API接口的测评,一共整顿了有十多家服务商的多维度测评内容,蕴含有网站名称、收费查问入口、定位后果和价格等等。鉴于篇幅过长,将分为三期推送。 咱们应用对立的IP地址,在各个API上进行查问,别离是Ipinfo、ipgeolocation、纯洁,同时联合公司介绍、技术、API价格、返回字段等多维度进行测评,明天将推送第一局部。咱们一起来比照看一下吧。 Ipinfo公司介绍l 网站名称:https://ipinfo.io/ l ipinfo成立于2013 年,公司团队属于寰球散布型,成员散布在5大洲和10个不同的国家,共有18名工作人员。 l 次要业务为IP地理位置查问API、vpn代理监测。单干客户有NIKE、CBS、Tencent、NPM、Graylog等,单干过的客户高达100000+。 API查问查问接口地址:https://ipinfo.io/     返回字段: Ipinfo产品有9种,除了IP地理位置查问API外还有ASN信息、公司信息、隐衷信息、滥用信息和域等API。 各类型返回字段表IP地理位置   名称形容city城市region地区(国内能够了解为省)country国家loc地点(经纬度)org组织timezone时区  ASN: 名称形容asn 自制网络编码name名称domain域route路线type类型(ASN:实现IP到ASN的映射和ASN查找,让用户能够拜访每一个数据库。)   Company : 名称形容name名称domain域type类型(Company:应用此IP的公司。)   Privacy : 名称形容vpn虚构专用网proxy代理torTor(一种代理类型)relay中继应用service服务(Privacy:检测用于覆盖用户实在IP地址的各种办法,VPN检测、代理检测、tor、中继应用或通过托管服务提供商的连贯,这些办法可能被用于VPN并覆盖实在 IP地址。) Abuse : 名称形容address地址country国家email电子邮件name名称network网络phone电话(Abuse:滥用 IP地址的分割数据。)   Domains ( 域)信息: 名称形容total总计domains域  价格ipinfo有收费版本,其余版本是依照次数免费,根本版:15万次查问99美元/月,标准版:25万次查问249美元/月,商业版:50万次查问499美元/月,也可依据需要定制。   ipgeolocation公司介绍l 网站名称:https://ipgeolocation.io/ l 由巴基斯坦拉合尔的JFreaks Software Solutions开发建设的。ipgeolocation特长包含数据分析和基于地位的利用程序开发。 l ipgeolocation 的诞生源于客户相干的我的项目中对IP定位的服务的需要。 2018年5月公布了 API 的第一个公开版本。 l 数据库蕴含超过2500万个IP地址范畴,是寰球最大的IP数据提供商之一。通过专有爬虫每天扫描所有注册表中的IP地址调配,并将其地位跟踪到城市级别的准确性。除此之外还有与 ISP单干以及用户报告的条目放弃数据库最新状态。 API查问查问接口: https://ipgeolocation.io https://ipgeolocation.io/ip-l... 返回字段   1. IP地理位置定位API: 精确的IP地位查找    2. 天文学API:   提供日出、日落、月出、月落、太阳方位角、月亮方位角、太阳高度、月亮高度、太阳与地球的间隔和月球与地球的经纬度或者IPv4、IPv6 地址的工夫日期。实用于酷爱摄影、远动、旅行、天文学等场景。   Comprehensive Sun and Moon data:通过提供对于给定日期和地位的傍晚工夫、不同的太阳和月亮参数返回字段如下。     Getting Astronomical Information from a Location Coordinates:能够通过一个地位的纬度和经度作为查问参数来获取地理信息。   ...

June 28, 2022 · 1 min · jiezi

关于ip:从4K到8K谁才是开启8K时代的钥匙

12月6日,B站发表上线8K超高清视频画质,成为国内首家反对UP主上传8K视频的平台。同时,B站还面向UP主提供画质晋升的4K超分性能,继续进步用户观看体验。 目前,B站是寰球为数不多反对8K视频上传和观看的视频平台。B 站联结新华社公布首个 8K 视频《追寻最美中国星》,记录8K画质的星空美景。 从4K120帧到杜比视界8K画质,数字影像技术始终在迭代。8K其实指的是数字影像的清晰度,目前支流的数字影像为全高清(2K)规范,分辨率为 1920×1080;4K 的分辨率为 3840×2160;而8K 的分辨率则达到惊人的 7680×4320,像素数量达到了4K的4倍,1080P的16倍,人眼视觉极限的 4.3 倍在屏幕大小不变的状况下,8K视频将多呈现出十几倍的像素数量,将光线、质感、人物皮肤、纹理等细节还原得更为实在。 中国联通《"5G+8K" 技术白皮书》数据显示,在 H.265 编码格局下,8K 视频晦涩播放要求传输速度达到 48-160Mbps。而目前大多数家庭的网络带宽尚不能满足 8K 视频所需速率,因而,愈来愈成熟的8K超清技术,仍须要技术的优化来实现数据量更大的传输,这对数据存储与传输来说都具备不小的挑战。为升高存储与传输带宽的占用度,须要更大的压缩比。ITU-T 在 2013年颁布了H.265规范,其压缩比可达 150 :1至 400 :1,由此实现了在画面质量不变的状况下,数据传输所需的码率降落 50% 左右,压缩后的码率能够达到 80~100Mbps。尽管实现了压缩,但SDH 零碎的传统 DS3(45M)通道已不能承载,须要采纳 IP 或 ASI 的业务状态。 目前针对于数据传输优化,广电运营商受带宽进口问题的影响较大,所以宽带运营商与广电网络运营商都在放慢欠缺CDN网络建设,从而力争给人们更好的体验,满足数字时代更多的需要。 那么CDN 网络的建设到底有什么作用?是否是开启8K时代的钥匙? CDN 即内容散发网络,其建设部署在 IP 数据网上,由散布在不同区域的节点服务器组成分布式网络,通过肯定的规定将源公布的内容公布到最靠近用户的边缘,用户能够就近获得所需的内容,缩小时延,升高网络拥塞。CDN 零碎架构由散发服务零碎、负载平衡零碎和经营管理系统形成,互联网上的内容会在 CDN 中进行缓存,以此达到优化网络流量、进步用户体验的目标。例如,运营商可使用IP地址的定位数据来获取来访用户地理位置信息,通过ISP数据理解来访用户IP地址的运营商信息,进行映射匹配剖析流量起源,从而进行CDN流量调度,就近调配服务器、晋升访问速度,进行 8K 信号的传输与笼罩。 随着5G时代的疾速倒退,8K超高清视频技术曾经在高清电视,户外大屏等畛域一直尝试落地,海内流媒体平台 YouTube 早在 2015 年就已反对 8K 视频。依据《超高清视频产业倒退行动计划(2019-2022 年)》,到 2022 年中国超高清产业的总体规模要达到 4 万亿元,超高清视频节目年制作能力达 3 万小时,超高清视频用户达到 2 亿。然而,当初国内市场8K电视渗透率还不到0.5%,随着5G技术商业化减速,8K终将会代替4K成为时代的宠儿,而CDN 网络的建设,极有可能是促成8K时代的快车道,万能的IP地址定位技术则会成为不可或缺的外围优化点,一起见证时代的提高。 将来,随着超高清视频技术与5G、人工智能、虚拟现实等新一代信息技术深度交融、翻新倒退,大量新利用、新模式将应运而生,超高清视频产业的倒退不仅仅是停留在降级用户视觉体验,更是逐渐构建国内 8K 生态,超高清视频利用场景也远远超出了“视频”自身的领域,IP 承载网、CDN网络建设等方面也将会有更大的舞台空间。 ...

December 16, 2021 · 1 min · jiezi

关于ip:高风险IP究竟来自哪里IP定位带你反欺诈

人类第四次工业革命的到来,把信息科技深刻渗透到生存的方方面面,以电信网络欺骗为代表的新型立功继续高发,公安部数据显示,2020年全国公安机关共破获电信网络欺骗案件32.2万起,抓获立功嫌疑人36.1万名,劝阻870万名大众免于被骗,累计挽回损失1876亿元。 往年九月,河北秦皇岛反诈民警陈国平在直播宣传反诈时,意外和“西厂公公”等主播连线,火上了热搜,并呐喊大家一起下载反诈app并宣传预防电信网络欺骗等常识亿元,国家反诈核心APP,也走进了民众的视线。 国家反诈核心APP汇合报案助手、举报线索、危险查问、欺骗预警等多种性能于一体化,不仅能够拦挡欺骗电话,还能够验证欺骗IP地址与QQ等信息,预防网络欺骗,能够说是预防电信网络欺骗“天花板”! 双十一到了 捂好本人的小钱包 转眼间2021年双十一又到来了,尾款人们,你的钱包还好吗? 然而,双十一冲业绩的不仅有商家还有有数的骗子们,他们正磨刀霍霍趁着大家疯狂买买买的劲头,开始“网络欺骗”的老本行。 双十一期间各大电商平台会以派发红包的模式,或者通过短信链接,页站广告,为促销流动宣传。不法分子以双十一流动为钓饵向用户发送网站订购链接,其实这些链接已被植入了木马,或为虚伪的钓鱼网站,诱骗大家点击链接。一旦点开,木马病毒就会植入手机或电脑窃取用户信息或者盗取资金。 在此揭示:双十一红包优惠最好通过官网路径支付,一旦接到可疑“红包”链接或流动链接,要尽快拨打电商或第三方领取网站官网客服电话征询确认,或者通过业余查问,辨认危险链接与IP地址。 高风险IP来自哪里 ? 电信网络欺骗层出不穷,联合了互联网高端科技的国家反诈APP是如何预防欺骗?对于来自网络的欺骗链接要如何预防?怎么辨认欺骗IP地址? 对一个服务器而言,以前拜访的用户往往还会再次出现。基于历史IP的过滤办法(history-IP filtering)基于这一原理,依据失常拜访源地址呈现的频率和相应的数据包数构建了IP地址数据库,并且采纳滑动窗口进行过期地址淘汰。IP问问服务数据库,将网络测绘技术与人工智能算法相结合,利用动静密度聚类算法和基于多层神经网络的 IP 定位算法,实现 IP 地址天文位定位。再通过对分析攻击、欺诈、舞弊的历史IP地址进行归属地、运营商等标签标注,前期同地区同类型IP呈现时,会进行无效防备,升高攻打、欺诈等概率,从而保障人民的财产平安。还能够通过剖析用户交易的IP地址判断是否存在多笔交易发生地汇集等危险场景或者IP地址是否来自高危地区,如缅甸、老挝,对高风险IP进行提醒;联合IP利用场景、IP地址的呈现地位的离散水平、散布状况综合用户行为及工夫判断IP地址危险水平,过滤机器流量。在登陆、交易、领取等多个环节联合多重验证等技术缩小欺诈行为。 来自某木马压缩包的歹意网站IP144.48.8.72查问后果 由此可见,IP地址定位对预防欺骗起着尤为重要的作用。如果您遇到不明IP地址,可间接关上IPUU,输出IP地址间接进行查问,辨认危险IP,爱护您的财产平安。 “没有网络安全就没有国家平安,就没有经济社会稳固运行,宽广人民群众利益也难以失去保障。在预防金融欺骗,电信网络欺骗,埃文科技始终走在最前列。九年来,埃文科技深耕网络空间地图技术开发与翻新,继续为国家信息安全、互联网技术推动和社会经济倒退等畛域提供技术撑持,为爱护网络安全做出奉献。

November 9, 2021 · 1 min · jiezi

关于ip:在线IP地址查询工具

在线IP地址查问工具在线IP地址查问工具 查问指定IPV4地址的归属地,暂不反对IPV6地址,数据起源为纯洁IP数据库,仅供参考 https://tooltt.com/ip/

August 13, 2021 · 1 min · jiezi

关于ip:从APNIC获取中国IP地址列表

对于APNIC     寰球IP地址块被IANA(Internet Assigned Numbers Authority)调配给寰球三大地区性IP地址调配机构,它们别离是: ARIN (American Registry for Internet Numbers)     负责北美、南美、加勒比以及非洲撒哈啦局部的IP地址调配。同时还要给寰球NSP(Network Service Providers)调配地址。 RIPE (Reseaux IP Europeens)     负责欧洲、中东、北非、西亚局部地区(前苏联) APNIC (Asia Pacific Network Information Center)     负责亚洲、太平洋地区 APNIC IP地址调配信息总表的获取: APNIC提供了每日更新的亚太地区IPv4,IPv6,AS号调配的信息表:http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest该文件的格局与具体内容参见:ftp://ftp.apnic.net/pub/apnic/stats/apnic/README.TXT通过该文件咱们可能失去APNIC辖下IPv4地址空间的分配情况。 脚本获取IP地址 #!/bin/bashwget -c http://ftp.apnic.net/stats/apnic/delegated-apnic-latestcat delegated-apnic-latest | awk -F '|' '/CN/&&/ipv4/ {print $4 "/" 32-log($5)/log(2)}' | cat > ipv4.txtcat delegated-apnic-latest | awk -F '|' '/CN/&&/ipv6/ {print $4 "/" 32-log($5)/log(2)}' | cat > ipv6.txtcat delegated-apnic-latest | awk -F '|' '/HK/&&/ipv4/ {print $4 "/" 32-log($5)/log(2)}' | cat > ipv4-hk.txtcat delegated-apnic-latest | awk -F '|' '/HK/&&/ipv6/ {print $4 "/" 32-log($5)/log(2)}' | cat > ipv6-hk.txt执行脚本: [root@cby cby]# ./ip.sh --2021-04-29 12:17:13-- http://ftp.apnic.net/stats/apnic/delegated-apnic-latestResolving ftp.apnic.net (ftp.apnic.net)... 203.119.102.40, 2001:dd8:8:701::40Connecting to ftp.apnic.net (ftp.apnic.net)|203.119.102.40|:80... connected.HTTP request sent, awaiting response... 200 OKLength: 3352151 (3.2M) [text/plain]Saving to: ‘delegated-apnic-latest’delegated-apnic-latest 100%[=============================================================>] 3.20M 61.3KB/s in 44s 2021-04-29 12:17:58 (74.0 KB/s) - ‘delegated-apnic-latest’ saved [3352151/3352151][root@cby cby]# lsdelegated-apnic-latest index.html ip.sh ipv4-hk.txt ipv4.txt ipv6-hk.txt ipv6.txt每日凌晨十二点非常会进行同步,若须要IP地址,能够拜访如下地址: ...

April 29, 2021 · 1 min · jiezi

linux-设置网络ip

环境:VMware 、CentOS release 6.5 网络设置为NATetc/sysconfig/network-scripts/ifcfg-eth0 配置文件如下`DEVICE="eth0" BOOTPROTO="static" HWADDR="00:0C:29:BD:D5:33" IPV6INIT="yes" NM_CONTROLLED="yes" ONBOOT="yes" TYPE="Ethernet" UUID="6994fe7a-1963-4c51-885e-7e20b52437ff" BOOTPROTO=static IPV6INIT=no USERCTL=no IPADDR=192.168.200.130 NETMASK=255.255.255.0 GATEWAY=192.168.200.255 DNS1=8.8.8.8 DNS2=8.8.4.4` 1.如果ip不一致,可能的原因是BOOTPROTO="dhcp" 2.如果重启网卡有问题,可能是HWADDR没有配置对,要和ifconfig显示的信息一致 3.还有就是,ifcfg-eth0可能配置的是eth1,重点是看这个属性是什么DEVICE="eth0"。不要被迷惑的

October 16, 2019 · 1 min · jiezi

浅析URL

浅析URLURL概览URL:Uniform Resource Locator的缩写。译为“统一资源定位符”URL的组成:协议+域名+端口+路径+查询参数+锚点URL举例:https://www.baidu.com/s?wd=he... 协议:https域名:www.baidu.com路径/s:查询参数:wd=hello&rsv_spt=1锚点:#5(不在network中显示,只和本地有关)端口:443(默认)IPInternet protocol:网络协议李爵士发明的三样东西: www(万维网):URL+HTTP+HTMLIP的两个作用 定位一台设备定义了如何封装数据,以及和其他设备交流(一)外网IP 路由器连上电信的服务器,那么路由器就会有一个外网IP;如果重启路由器,就有可能被分配到一个新的IP:也就是说没有固定的外网IP(二)内网IP 路由器会创建一个内网,并给自己分配一个好记的域名,一般是192.168.1.1路由器会给每个连接路由器的设备分配一个IP(三)路由器的功能: 内网中的设备可以互相访问,但不能直接访问外网。想要访问外网就必须通过路由器外网中的设备也可以互相访问,但不能直接访问内网,想要把内容送到内网,也需要通过路由器内网和外网是两个独立的空间,无法互通,唯一的联通点就是路由器路由器有时候也被叫做网关(四)几个特殊的IP 127.0.0.1 表示自己localhost表示hosts指定为自己0.0.0.0不表示任何设备端口一台机器可以提供很多服务:每个服务一个号码,这个号码叫做端口号port一台机器可以提供不同的服务: HTTP服务:使用80端口HTTPS服务:使用443端口FTP服务:使用21端口一共65535个端口端口使用的规则 0到1023号端口是留给系统用的你只有拥有了管理员 权限后,才能使用1024个系统端口,其他端口可以给用户使用比如http-server默认使用8080端口一个端口如果被占用,那么只能使用另一个端口tips: 端口和IP缺一不可 域名域名就是IP的别称记忆点:(1)一个域名可以对应不同IP(均衡负载)(2)一个IP可以对应不同域名(共享主机)(3)均衡负载:防止一台机器扛不住(4)共享主机:穷开发者会这么做,公用一个主机 域名和IP是如何对应起来的?——DNSDNS(Domain Name System, 域名系统/域名服务)当输入baidu.com并点击回车: 你的浏览器向电信/联通提供的DNS服务器询问www.baidu.com对应什么IP电信/联通会回答一个IP浏览器向对应的443/80端口发送请求请求内容为baidu.com的首页为什么是80、443端口? 服务器默认用80端口提供http服务服务器默认用443端口提供https服务可以在开发者工具中看到具体的端口(network)域名等级和wwwcom是顶级域名baidu.com是二级域名www.baidu.com是三级域名 www多余吗? 非常多余理论上讲xxx.com和www.xxx.com可以对应不同的公司如何查看域名对应的IP地址?在命令行中输入ping xxx即可得到xxx域名对应的IP地址了在命令行中输入nslookup xxx就可以看到xxx域名对应的所有地址了 http相关概念HTTP全称:HyperText Transfer ProtocolHTTP作用:规定请求的格式和响应的格式

October 5, 2019 · 1 min · jiezi

wireshark-ICMP

总体抓包图bogon,哈哈 关注看icmp报文类型和代码 win 下执行traceertC:\Users\tb>tracert jd.com通过最多 30 个跃点跟踪到 jd.com [118.193.98.63] 的路由: 1 2 ms 2 ms 2 ms bogon [192.168.1.1] 2 10 ms 4 ms 4 ms 100.64.0.1 3 5 ms 5 ms 5 ms 73.254.120.106.static.bjtelecom.net [106.120.254.73] 4 7 ms * 5 ms 219.142.1.70 5 12 ms 8 ms 7 ms 220.181.0.34 6 * * * 请求超时。 7 * * * 请求超时。 8 * * * 请求超时。 9 * * * 请求超时。 10 * * * 请求超时。 11 * * * 请求超时。 12 * * * 请求超时。 13 * * * 请求超时。 14 * * * 请求超时。 15 * * * 请求超时。 16 7 ms 6 ms 6 ms 118.193.98.63跟踪完成。应用实现举例1. 将ttl 设置过期源主机向目的主机发送一系列特定的UDP数据报。第一组ip数据报 ttl=1第二组IP数据报ttl=2,etc...,如下图 ...

October 4, 2019 · 2 min · jiezi

笔记tcpip-illustrated-6-ICMP

一、参考二、名词解释ICMP: internet control message protocol 网络控制消息协议rtt:round-trip time 往返时间NTP:network time protocol 网络时间协议 三、内容1. 概要 ICMP通常被认为是IP层的一部分,它传递错误消息和其他需要注意的情况,IMCP消息通常由IP层或者更高层(UDP、TCP)操作,某些ICMP消息会导致错误,并且返回到用户进程ICMP消息包含于IP数据包中 2. 消息类型 3. ICMP地址掩码请求和响应 ICMP地址掩码请求用于无硬盘主机在引导程序中获取子网掩码,请求系统广播ICMP请求,获取子网掩码还可以使用BOOTP协议 如图:标识字段和序列号字段,由发送方填充,响应中有同样字段和同样值,用于发送者和接收者之间的匹配

September 19, 2019 · 1 min · jiezi

IPUDP和TCP的关系

互联网,实际上是一套理念和协议组成的体系架构。其中,协议是一套众所周知的规则和标准,如果各方都同意使用,那么它们之间的通信将变得毫无障碍。 IP:把数据包送达目的主机数据包要在互联网上进行传输,就要符合网际协议(IP)标准,互联网上不同的在线设备都有唯一的地址,地址只是一个数字,这和大部分家庭收件地址类似,你只需要知道一个家庭的具体地址,就可以往这个地址发送包裹,这样物流系统就能把物品送到目的地。 计算机的地址就称为 IP 地址,访问任何网站实际上只是你的计算机向另外一台计算机请求信息。 如果要想把一个数据包从主机 A 发送给主机 B,那么在传输之前,数据包上会被附加上主机 B 的 IP 地址信息,这样在传输过程中才能正确寻址。额外地,数据包上还会附加上主机 A 本身的 IP 地址,有了这些信息主机 B 才可以回复信息给主机 A。这些附加的信息会被装进一个叫 IP 头的数据结构里。IP 头是 IP 数据包开头的信息,包含 IP 版本、源 IP 地址、目标 IP 地址、生存时间等信息。 简化的 UDP 网络三层传输模型 UDP:把数据包送达应用程序IP 是非常底层的协议,只负责把数据包传送到对方电脑,但是对方电脑并不知道把数据包交给哪个程序,是交给浏览器还是交给王者荣耀?因此,需要基于 IP 之上开发能和应用打交道的协议,最常见的是“用户数据包协议(User Datagram Protocol)”,简称UDP。 UDP 中一个最重要的信息是端口号,端口号其实就是一个数字,每个想访问网络的程序都需要绑定一个端口号。通过端口号 UDP 就能把指定的数据包发送给指定的程序了,所以IP 通过 IP 地址信息把数据包发送给指定的电脑,而 UDP 通过端口号把数据包分发给正确的程序。和 IP 头一样,端口号会被装进 UDP 头里面,UDP 头再和原始数据包合并组成新的 UDP 数据包。UDP 头中除了目的端口,还有源端口号等信息。 简化的 UDP 网络四层传输模型 UDP 不能保证数据可靠性,但是传输速度却非常快,所以 UDP 会应用在一些关注速度、但不那么严格要求数据完整性的领域,如在线视频、互动游戏等。 ...

August 20, 2019 · 1 min · jiezi

域名背后那些事

互联网中的地址是数字的 IP 地址,例如 61.135.169.125 就是百度的官网地址之一,如果每次访问百度都需要输入 IP 的话,估计到今天互联网都还没有走出鸿蒙阶段。 在网络发展历史上,最开始确实就是直接使用 IP 地址来访问远程主机的。早期联网的每台计算机都是采用主机文件(即我们俗称的 hosts 文件)来进行地址配置和解析的,后来联网机器越来越多,主机文件的更新和同步就成了很大的问题。于是,1983 年保罗·莫卡派乔斯发明了域名解析服务和域名系统,在 1985 年 1 月 1 日,世界上第一个域名 nordu.net 才被注册成功。 域名比 IP 地址更容易记忆,本质上只是为数字化的互联网资源提供了易于记忆的别名,就像在北京提起「故宫博物院」就都知道指的是「东城区景山前街 4 号」的那个大院子一样。如果把 IP 地址看成电话号码,那域名系统就是通讯录。我们在通讯录里保存了朋友和家人的信息,每次通过名字找到某人打电话的时候,通讯录就会查出与之关联的电话号码,然后拨号过去。我们可能记不下多少完整的电话号码,但是联系人的名字却是一定记得的。 既然「域名」只是一个别名,单凭这一个名字我们并不能访问到正确的地址,只有能将域名解析成实际的网络地址,网络访问才能成功。这种解析工作由专门的「域名系统」(Domain Name System,简称 DNS)完成,DNS 也是互联网的核心基础服务之一。 域名解析是怎么完成的DNS 解析的过程是什么样子的呢?在开始这个问题之前,我们先看一看域名的层次结构。 域名的层级结构在讨论域名的时候,我们经常听到有人说「顶级域名」、「一级域名」、「二级域名」等概念,域名级别究竟是怎么划分的呢? 根域名。还是以百度为例,通过一些域名解析工具,我们可以看到百度官网域名显示为 www.baidu.com.,细心的人会注意到,这里最后有一个 .,这不是 bug,而是所有域名的尾部都有一个根域名。www.baidu.com 真正的域名是 www.baidu.com.root,简写为www.baidu.com.,又因为根域名 .root 对于所有域名都是一样的,所以平时是省略的,最终就变成了我们常见的样子。根域名的下一级叫做顶级域名(top-level domain,缩写为 TLD),也叫做一级域名,常见的如 .com / .net / .org / .cn 等等,他们就是顶级域名。再下一级叫做二级域名(second-level domain,缩写为 SLD),比如 baidu.com。这是我们能够购买和注册的最高级域名。次级域名之下,就是主机名(host),也可以称为三级域名,比如 www.baidu.com,由此往下,基本上 N 级域名就是在 N-1 级域名前追加一级。总结一下,常见的域名层级结构如下: 主机名.次级域名.顶级域名.根域名# iewww.baidu.com.root一般来说我们购买一个域名就是购买一个二级域名(SLD)的管理权(如 leancloud.cn),有了这个管理权我们就可以随意设置三级、四级域名了。 域名解析的过程与域名的分级结构对应,DNS 系统也是一个树状结构,不同级别的域名由不同的域名服务器来解析,整个过程是一个「层级式」的。 ...

July 12, 2019 · 4 min · jiezi

浅谈IPv4至IPv6演进的实施路径

作者:个推运维平台网络工程师 宗堂 1 业务背景在互联网呈现爆炸式发展的今天, IPv4网络地址数量匮乏等问题将会影响到我国的互联网发展与应用,制约物联网、5G等新业务开展。今年4月国家工信部发布了《关于开展2019年IPv6网络就绪专项行动的通知》,重点任务包括网络基础设施IPv6能力就绪等。IPv6即互联网协议第6版,是互联网工程任务组(IETF)设计的用于替代IPv4的下一代IP协议,使用IPv6网络不仅能解决网络地址资源数量的问题,而且也解决了多种接入设备连入互联网的难题。 本文将带您细细解读从IPv4至IPv6改造的技术模型、改造实施的硬性条件以及个推IPv6的实施进度。 2 IPv4至IPv6改造的技术模型业界对IPv4 至 IPv6改造过度提供三种解决方案,即双栈技术模式、隧道技术模式、地址转换模式。 1、双栈技术模式:在同一个网络上运行两个彼此独立的平面:一个IPv4网络平面,一个IPv6网络平面,各自维护自己的IGP/EGP状态及路由。在这种模式下,IPv4和IPv6共存,既不影响现有IPv4业务,也可以满足IPv6的新需求。但这种模式下实施成本较高,一是需要全网的网络设备支持,二是全网设备IGP/EGP调整工作难度较大,如果仅在小范围内实施,这是一种比较好的选择模式。 2、隧道技术模式:这种模式运用于IPv4 和IPv6的边界。首先,借助IPv4网络来建立IPv4隧道,然后实现IPv6点到点访问,通常用于IDC出口边界或内部IGP跨域访问。技术协议包括6in4隧道、DS+NAT、DS-Lite等。隧道模式是三种改造方式中最便捷的一种,但是对内网IGP协议以及关键链路流量用量有一定的要求。 3、转换模式:即在不改动现有网络结构情况下,通过地址转换协议,进行IPv4 to IPv6 或IPv6 to IPv4 访问转换,可满足IPv4与IPv6之间的双向访问需求。技术部署协议包括NAT 46,一般面向数据中心出口,提供由外到内,由内到外的映射。这种模式对于设备性能要求较高,对高并发业务支撑较困难,适合会话较小的业务。 3 IPv4 至 IPv6实施所依赖的硬性条件1、 网络设备:所涉及到的交换机、防火墙及操作系统,均要支持IPv6协议族。2、 出口运营商:需要提供IPv6接入能力。3、 内部业务改造:业务代码层面,需要新增IPv6协议栈的支持。 4 个推IPv6实施进度1、改造模式的选择个推实施IPv6,首先要满足实现IPv6所依赖的硬性条件基础,同时核心需求是既要满足IPv4用户高质量、低延迟访问,也要进一步保障IPv6新用户的接入。通过对三种改造模式的解析,其中“双栈模式”作为个推在推进IPv6改造过程中的技术支撑导向,是较为适合的。 2、改造拓扑此次改造总共分为两部分:一是完成直连公网服务器群的IPv6接入改造:采用双栈技术模型,一个网卡接口同时运行IPv4和IPv6地址。通过绑定域名A记录,完成公网至IPv4网卡的引流,通过绑定AAAA记录,完成公网至IPv6网卡的引流。二是改造业务:完成SDK对IPv6协议族的支持改造。 3、实施进度 5 总结5G时代即将来临, IPv6网络将成为互联网新业务发展与运用的强有力支撑。未来,个推也将不断打磨自身技术,积极探索并开展IPv4至IPv6之路,实现IPv6网络的全面启用。

June 10, 2019 · 1 min · jiezi

Mac-webstorm启动服务时如何设置移动设备可以通过ip进行访问

如上图示 默认的端口有安全限制,换成4位数的。再打把旁边的 Canaccept external connections勾上。把localhost换成你的ip访问就可以了,移动设备就可以使用ip进行访问了。

May 11, 2019 · 1 min · jiezi

【Go】获取用户真实的ip地址

原文链接:https://blog.thinkeridea.com/…用户请求到达提供服务的服务器中间有很多的环节,导致服务获取用户真实的 ip 非常困难,大多数的框架及工具库都会封装各种获取用户真实 ip 的方法,在 exnet 包中也封装了各种 ip 相关的操作,其中就包含获取客户端 ip 的方法,比较实用的方法如下:func ClientIP(r *http.Request) string ClientIP 尽最大努力实现获取客户端 IP 的算法。 解析 X-Real-IP 和 X-Forwarded-For 以便于反向代理(nginx 或 haproxy)可以正常工作。func ClientPublicIP(r *http.Request) string ClientPublicIP 尽最大努力实现获取客户端公网 IP 的算法。 解析 X-Real-IP 和 X-Forwarded-For 以便于反向代理(nginx 或 haproxy)可以正常工作。func HasLocalIP(ip net.IP) bool HasLocalIP 检测 IP 地址是否是内网地址func HasLocalIPddr(ip string) bool HasLocalIPddr 检测 IP 地址字符串是否是内网地址func RemoteIP(r *http.Request) string RemoteIP 通过 RemoteAddr 获取 IP 地址, 只是一个快速解析方法。获取用户真实ip地址ClientIP 方法 与 ClientPublicIP 方法的实现类似,只是一个按照 http 协议约定获取客户端 ip, 一个按照约定格式查找到公网 ip。在网络与服务架构、业务逻辑复杂的环境中,按照 http 协议约定的方式,并非总能获取到真实的 ip,在我们的业务中用户流量经由三方多层级转发(都是三方自己实现的http client) ,难免会出现一些纰漏,这时越往后的服务获取用户真实 ip 越加困难,你甚至不知道自己获取的 ip 是否是真实的。但是我们的客户经由三方转发而来的流量,那么客户极大多数甚至排除测试之外都是公网用户,结合使用 ClientPublicIP 和 ClientIP 方法总能更好的获取用户的真实 ip。// var r *http.Requestip := exnet.ClientPublicIP(r)if ip == “”{ ip = exnet.ClientIP(r)}用上面的方法总能有效的获取用户真实的 ip 地址,下面分析下两个方法的具体实现。// ClientIP 尽最大努力实现获取客户端 IP 的算法。// 解析 X-Real-IP 和 X-Forwarded-For 以便于反向代理(nginx 或 haproxy)可以正常工作。func ClientIP(r *http.Request) string { xForwardedFor := r.Header.Get(“X-Forwarded-For”) ip := strings.TrimSpace(strings.Split(xForwardedFor, “,”)[0]) if ip != "" { return ip } ip = strings.TrimSpace(r.Header.Get(“X-Real-Ip”)) if ip != "" { return ip } if ip, _, err := net.SplitHostPort(strings.TrimSpace(r.RemoteAddr)); err == nil { return ip } return “"}ClientIP 首先读取 X-Forwarded-For header 中用 , 分隔的第一个ip地址,如果这个地址不存在,就会从 X-Real-Ip header 中获取,如果还是不存在,说明流量并非是由反向代理转发而来,而是客户端直接请求服务,这时通过 http.Request.RemoteAddr 字段截取除去端口号的 ip 地址。这个方法很简单,就是按照 http 约定的格式获取,其中 X-Forwarded-For 和 X-Real-Ip header 由反向代理填充,例如 nginx 或 haproxy。// ClientPublicIP 尽最大努力实现获取客户端公网 IP 的算法。// 解析 X-Real-IP 和 X-Forwarded-For 以便于反向代理(nginx 或 haproxy)可以正常工作。func ClientPublicIP(r *http.Request) string { var ip string for _, ip = range strings.Split(r.Header.Get(“X-Forwarded-For”), “,”) { ip = strings.TrimSpace(ip) if ip != "” && !HasLocalIPddr(ip) { return ip } } ip = strings.TrimSpace(r.Header.Get(“X-Real-Ip”)) if ip != "" && !HasLocalIPddr(ip) { return ip } if ip, _, err := net.SplitHostPort(strings.TrimSpace(r.RemoteAddr)); err == nil { if !HasLocalIPddr(ip) { return ip } } return “"}ClientPublicIP 很简单,和 ClientIP 方法的读取顺序一样,只是试图中 X-Forwarded-For 列表中找到一个公网ip,如果没有检查 X-Real-Ip 是否是一个公网 ip,其次检查 http.Request.RemoteAddr 是否是公网ip,如果没有找到公网 ip 这返回一个空字符串。这个方法可以让我们有机会优先获取到用户的公网 ip,往往公网 ip 对我们来说更有价值。检查ip对否是内网地址exnet 中还提供了检查 ip 地址是否是内网地址,这在有些情况下非常有用,比如:服务中有些接口只能内网访问,也就是只允许管理员访问(例如动态设定日志级别、查看服务 pprof 信息);我们想隐藏后端服务,只暴露给用户负载均衡(反向代理),用户无法直接访问我们的服务,这些方法及其有用,下面看看具体实现。我的服务提供了动态设置日志级别,以便服务出现问题,可以第一时间查看调试日志分析具体原因,但是这个接口很危险,不应该暴露给公网,所以会用路由中间件检查请求是否来自公网,来自公网则返回 404。该方法认为如下地址段都是内网地址:10.0.0.0/8169.254.0.0/16172.16.0.0/12172.17.0.0/12172.18.0.0/12172.19.0.0/12172.20.0.0/12172.21.0.0/12172.22.0.0/12172.23.0.0/12172.24.0.0/12172.25.0.0/12172.26.0.0/12172.27.0.0/12172.28.0.0/12172.29.0.0/12172.30.0.0/12172.31.0.0/12192.168.0.0/16// HasLocalIPddr 检测 IP 地址字符串是否是内网地址func HasLocalIPddr(ip string) bool { return HasLocalIP(net.ParseIP(ip))}// HasLocalIP 检测 IP 地址是否是内网地址func HasLocalIP(ip net.IP) bool { for _, network := range localNetworks { if network.Contains(ip) { return true } } return ip.IsLoopback()}两个检查方法实现差异仅接受参数类型不一致,检查过程都是逐个对比内网 ip 段是否包含该ip地址,如果不包含则判断该地址是否是回环地址。获取反向代理ip如何判断改地址来自反向代理服务器呢,不同的反向代理实现都有些差异,4 层反向代理甚至可以提供用户的真实 ip(http.Request.RemoteAddr 是用户的ip,而不是反向代理的), 而隐藏自己的ip,这里说一下常见的方法。往往 http.Request.RemoteAddr 保存最后一个连接服务的客户端 ip,我们获取反向代理的ip地址,最简单有效的方法就是通过 http.Request.RemoteAddr 获取, exnet 中提供了 RemoteIP 的快捷方法,实现如下:// RemoteIP 通过 RemoteAddr 获取 IP 地址, 只是一个快速解析方法。func RemoteIP(r *http.Request) string { if ip, _, err := net.SplitHostPort(strings.TrimSpace(r.RemoteAddr)); err == nil { return ip } return “"}这是一个非常方便的脚手架,它仅仅切分 http.Request.RemoteAddr 的 ip 和端口,并返回有效的ip地址,但却可以简化我们的编写业务代码。转载:本文作者: 戚银(thinkeridea)本文链接: https://blog.thinkeridea.com/201903/go/get_client_ip.html版权声明: 本博客所有文章除特别声明外,均采用 CC BY 4.0 CN协议 许可协议。转载请注明出处! ...

March 28, 2019 · 2 min · jiezi

Linux 网络工具详解之 ip tuntap 和 tunctl 创建 tap/tun 设备

本文首发于我的公众号 CloudDeveloper(ID: cloud_dev),专注于干货分享,号内有大量书籍和视频资源,后台回复「1024」即可领取,欢迎大家关注,二维码文末可以扫。在前面一篇文章中,我们已经介绍了 tap/tun 的基本原理,本文将介绍如何使用工具 tunctl 和 ip tuntap 来创建并使用 tap/tun 设备。tunctl安装首先在 centos 的环境中安装 tunctl。[root@localhost ~]# vim /etc/yum.repos.d/nux-misc.repo[nux-misc]name=Nux Miscbaseurl=http://li.nux.ro/download/nux/misc/el7/x86_64/enabled=0gpgcheck=1gpgkey=http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.roubuntu 是 apt-get install uml-utilities。man tunctl 查看 tunctl 手册,用法如下:Synopsistunctl [ OPTIONS ] [ -u owner ] [-g group] [ -t device-name ]-u 参数指定用户名,表明这个接口只受该用户控制,这个接口发生的事不会影响到系统的接口。-g 指定一组用户-t 指定要创建的 tap/tun 设备名。[OPTIONS] 部分:-b 简单打印创建的接口名字-n 创建 tun 设备-p 创建 tap 设备,默认创建该设备-f tun-clone-device 指定 tun 设备对应的文件名,默认是 /dev/net/tun,有些系统是 /dev/misc/net/tun。-d interfacename 删除指定接口使用常见用法:默认创建 tap 接口:tunctl以上等价于 tunctl -p为用户 user 创建一个 tap 接口:# tunctl -u user创建 tun 接口:tunctl -n为接口配置 IP 并启用:# ifconfig tap0 192.168.0.254 up为接口添加路由:# route add -host 192.168.0.1 dev tap0删除接口:# tunctl -d tap0ip tuntap安装命令行输入 ip help 查看 ip 命令是否支持 tuntap 工具,支持的话就会显示 tuntap 选项:[root@localhost ~]# ip helpUsage: ip [ OPTIONS ] OBJECT { COMMAND | help } ip [ -force ] -batch filenamewhere OBJECT := { link | addr | addrlabel | route | rule | neigh | ntable | tunnel | tuntap | maddr | mroute | mrule | monitor | xfrm | netns | l2tp | tcp_metrics | token }不支持就请升级或下载最新的 iproute2 工具包,或者使用上面介绍的 tunctl 工具。使用输入 ip tuntap help 查看详细使用命令:[root@localhost ~]# ip tuntap helpUsage: ip tuntap { add | del } [ dev PHYS_DEV ] [ mode { tun | tap } ] [ user USER ] [ group GROUP ] [ one_queue ] [ pi ] [ vnet_hdr ] [ multi_queue ]Where: USER := { STRING | NUMBER } GROUP := { STRING | NUMBER }常见用法:创建 tap/tun 设备:ip tuntap add dev tap0 mod tap # 创建 tap ip tuntap add dev tun0 mod tun # 创建 tun删除 tap/tun 设备:ip tuntap del dev tap0 mod tap # 删除 tap ip tuntap del dev tun0 mod tun # 删除 tunPS: user 和 group 参数和 tunctl 的 -u、 -g 参数是一样的。以上两个工具,我们更推荐使用 ip tuntap,一个是因为 iproute2 更全更新,已经逐步在替代老旧的一些工具,另一个是因为 tunctl 在某些 Debian 类的系统上支持不全。总结tunctl 和 ip tuntap 的常见使用方式。更推荐使用 ip tuntap 工具。我的公众号 CloudDeveloper(ID: cloud_dev),号内有大量书籍和视频资源,后台回复「1024」即可领取,分享的内容包括但不限于云计算虚拟化、容器、OpenStack、K8S、雾计算、网络、工具、SDN、OVS、DPDK、Linux、Go、Python、C/C++编程技术等内容,欢迎大家关注。 ...

March 1, 2019 · 2 min · jiezi

PHP面试常考之网络协议

你好,是我琉忆,欢迎您来到PHP面试专栏。本周(2019.2-25至3-1)的一三五更新的文章如下:周一:PHP面试常考之会话控制周三:PHP面试常考之网络协议周五:PHP面试常考题之会话控制和网络协议送2本书:《PHP程序员面试笔试真题解析》自己整理了一篇面试最爱问的一道题“从网址输入到看到内容背后的流程是什么样的?”的文章,关注公众号:“琉忆编程库”,回复:“http”,我发给你。以下正文的内容来自《PHP程序员面试笔试宝典》书籍,如果转载请保留出处:一、协议和TCP/IP在20世纪80年代,计算机网络诞生,它能够将一台台独立的计算机互相连接,使得位于不同地理位置的计算机之间可以进行通信,实现信息传递和资源共享,形成一组规模大、功能强的计算机系统。不过,计算机要想在网络中正常通信,必须遵守相关网络协议的规则,常用的网络协议有TCP、UDP、IP和HTTP等。协议协议可简单理解为计算机之间的一种约定,好比人与人之间对话所使用的语言。在国内,不同地区的人讲的方言都不同,如果要沟通,就要约定一种大家都会的语言,例如全国通用的普通话,普通话就相当于协议,沟通相当于通信,说话内容相当于数据信息。协议需要具备通用的特征,但在早期,每家计算机厂商都根据自己的标准来生产网络产品,这使得不同厂商制造的计算机之间难以通信,严重影响了用户的日常使用。为了应对这些问题,ISO(国际标准化组织)制定了一套国际标准OSI(开放式系统互联通信参考模型),将通信系统标准化。所谓标准化是指建立技术标准,企业按照这个标准来制造产品,这大大提升了产品的兼容性、互操作性以及易用性。OSI参考模型将复杂的协议分成了7层(见下表),每一层各司其职,并且能独立使用,这相当于软件中的模块化开发,有较强的扩展性和灵活性。分层是一种管理哲学,将同一类功能的网络协议分到一层中,使协议变得灵活可控。在7层OSI模型中,发送方从第7层的应用层到第1层的物理层,由上至下按顺序传输数据,而接收方则从第1层到第7层,由下至上接收数据,如右图所示。TCP/IPTCP/IP是为互联网服务的协议族,它是网络通信协议的统称,由IP、TCP、HTTP和FTP等协议组成。TCP/IP将通信过程抽象为4层,被视为简化的OSI参考模型(如右图所示,左边是OSI参考模型,右边是TCP/IP的模型),但负责维护这套协议族的不是ISO而是IETF(互联网工程任务组)。TCP/IP在标准化过程中注重开放性和实用性,需要标准化的协议会被放进RFC(Request For Comment)文档中,RFC文档详细记录了协议的实现、运用和实验等各方面的内容,并且这些文档可在线浏览。发送的数据会在分层模型内传递,并且每到一层,就会附加该层的包首部,包首部包含了该层协议的相关信息,例如MAC地址、IP地址和端口号。下图描绘了从传输层到互联网层,分别附加了TCP包首部和IP包首部。互联网一词现在已经家喻户晓,它是由许多网络互联构成的一个巨型网络。早期的网络仅仅是连接计算机,而现代的互联网连接的却是全世界的人。互联网已经不再是单纯的以数据为核心,而是以人为中心,渗透到生活中的方方面面,颠覆了许多传统模式,例如足不出户就能购物、社交或娱乐。 自己整理了一篇面试最爱问的一道题“从网址输入到看到内容背后的流程是什么样的?”的文章,关注公众号:“琉忆编程库”,回复:“http”,我发给你。二、HTTPHTTP(HyperText Transfer Protocol)即超文本传输协议,是一种获取网络资源(例如图像、HTML文档)的应用层协议,它是互联网数据通信的基础,由请求和响应构成(如右图所示)。通常,客户端发起HTTP请求(在请求报文中会指定资源的URL),然后用传输层的TCP协议建立连接,最后服务器响应请求,做出应答,回传数据报文。HTTP自问世到现在,经历了几次版本迭代,目前主流的版本是HTTP/1.1,新一代HTTP/2.0是HTTP/1.1的升级版,各方面都超越了前者,但新技术要做到软硬件兼容还需要假以时日。HTTP协议有三个特征,分别是持久连接、管道化以及无状态。(1)持久连接在HTTP的早期版本中,一次HTTP通信完成后就会断开连接,下一次再重新连接,如右图所示。在当时请求资源并不多的情况下,并不会造成大问题。但随着HTTP的普及,请求的资源越来越庞大,例如一个HTML文档中可能会包含多个CSS文件、JavaScript文件、图像甚至视频,如果还这么操作,会造成巨大的通信开销。为了解决上述问题,提出了持久连接,只要通信两端的任意一端没有明确提出断开,就保持连接状态,以便下一次通信复用该连接,这避免了重复建立和断开连接所造成的开销,加速了页面呈现,如下图所示。(2)管道化管道化是建立在持久连接上的进一步性能优化。过去,请求必须按照先进先出的队列顺序,也就是发送请求后,要等待并接收到响应,才能再继续下一个请求。启用管道化后,就会将队列顺序迁移到服务器,这样就能同时发送多个请求,然后服务器再按顺序一个接一个地响应,如下图所示。 (3)状态管理HTTP是一种无状态协议,请求和响应一一对应,不会出现两个请求复用一个响应的情况(如下图所示)。也就是说,每个请求都是独立的,即使在同一条连接中,请求之间也没有联系。 在有些业务场景中,需要请求有状态,例如后台登录。成功登录后就得保存登录状态,否则每次跳转进入其他页面都会要求重新登录。为了能管理状态,引入了Cookie技术,Cookie技术能让请求和响应的报文都附加Cookie信息,客户端将Cookie值发送出去,服务器接收并处理这个值,最终就能得到客户端的状态信息。预告:本周五更新PHP面试常考题之会话控制和网络协议,敬请期待。以上内容摘自《PHP程序员面试笔试宝典》书籍,该书已在天猫、京东、当当等电商平台销售。更多PHP相关的面试知识、考题可以关注公众号获取:琉忆编程库对本文有什么问题或建议都可以进行留言,我将不断完善追求极致,感谢你们的支持。

February 27, 2019 · 1 min · jiezi

公共DNS服务器整理

转载请注明文章出处:https://tlanyan.me/public-dns…本文整理知名的国内外公共DNS服务器。稳定、可靠、优质的DNS服务会消耗不少资源,因此对公众开发的DNS服务一般由大公司、机构或ISP提供。不少公司提供了各具特色的DNS服务,本文将根据官网介绍一一指出。国内114 DNS114 DNS应该算国内最知名的公共DNS,自2010年开始提供服务。114 DNS 纯净、无劫持的解析域名,让用户无需忍受被跳转去看广告或粗俗网站的痛苦。纯净版服务器地址:114.114.114.114 和 114.114.115.115安全版,拦截钓鱼病毒木马网站,服务器地址: 114.114.114.119 和 114.114.115.119家庭版,拦截色情网站,服务器地址: 114.114.114.110 和 114.114.115.110阿里 DNS阿里DNS提供快速、智能的DNS解析服务,2014年正式上线。服务器地址:223.5.5.5 和 223.6.6.6百度 DNS百度DNS 无劫持、拦截钓鱼病毒木马网站,并提供IPv6解析。服务器地址:180.76.76.76 和 2400:da00::6666DNSPod Public DNS+Public DNS+ 是属于腾讯云旗下的公DNS服务,是国内首家支持谷歌 ECS (edns-client-subnet) 协议的公共 DNS 解析服务。服务器地址: 119.29.29.29360 DNS派DNS派 是360旗下的公共DNS服务,特点是:让网上冲浪更加稳定、快速、安全; 为家庭拦截钓鱼网站,过滤非法网站,建立一个绿色健康的网上环境; 为域名拼写自动纠错, 让上网更方便。首选(电信/移动/铁通):101.226.4.6备选(电信/移动/铁通):218.30.118.6首选(联通):123.125.81.6备选(联通):140.207.198.6CNNIC sDNSsDNS是由中国互联网络信息中心(CNNIC)与国内外电信运营商合作推出的免费公共云解析服务,提供安全、智能、告诉的域名解析。服务器地址: 1.2.4.8 和 210.2.4.8TUNA DNS666TUNA DNS666 是清华大学学生网络与开源软件协会(TUNA)提供的精确域名递归查询服务。服务器地址:101.6.6.6 和 2001:da8::666IPv6公共DNSIPv6公共DNS 由下一代互联网国家工程中心推出,提供高效稳定、安全隐私的IPv6地址解析。服务器地址:240C::6666 和 240C::6644国外Google公共DNSGoogle公共DNS算得上最知名的国外公共DNS服务,目前也是全球查询次数最多的公共DNS。其提供安全、隐私的域名解析,支持IPv6。IPv4服务器地址: 8.8.8.8 和 8.8.4.4IPv6服务器地址:2001:4860:4860::8888 和 2001:4860:4860::8844CloudflareCloudflare目前是全球流量最大的CDN服务提供商,同时其提供极速、隐私的公共DNS解析服务。IPv4服务器地址: 1.1.1.1 和 1.0.0.1IPv6服务器地址:2606:4700:4700::1111 和 2606:4700:4700::1001OpenDNSOpenDNS是老牌DNS提供商,目前由思科(Cisco)持有,提供快速、可靠的域名解析服务。服务器地址: 208.67.222.222 和 208.67.220.220Comodo安全DNSComodo安全DNS提供安全、快速的域名解析服务。服务器地址: 8.26.56.26 和 8.20.247.20 。此外还提供钓鱼等高级防护的服务,地址是:8.26.56.10 和 8.20.247.10IBM Quad9Quad9是IBM在2016年推出的公共域名解析服务,主打安全和隐私。IPv4服务器地址: 9.9.9.9 和 149.112.112.112IPv6服务器地址:2620:fe::fe 和 2620:fe::9Yandex DNSYandex DNS是俄罗斯最大搜索引擎Yandex提供的公共域名解析服务,提供三种类型域名解析:基本版服务器地址:77.88.8.8 和 77.88.8.1安全版,拦截病毒钓鱼木马网站,服务器地址: 77.88.8.88 和 77.88.8.2家庭版,过滤成人色情网站,服务器地址: 77.88.8.7 和 77.88.8.3Verisign DNSVerisign DNS是由Verisign公司提供的DNS服务,特点是安全和隐私。IPv4服务器地址: 64.6.64.6 和 64.6.65.6IPv6服务器地址:2620:74:1b::1:1 和 2620:74:1c::2:2DNS.WatchDNS.Watch提供无删减的域名解析,主打自由。IPv4服务器地址: 84.200.69.80 和 84.200.70.40IPv6服务器地址:2001:1608:10:25::1c04:b12f 和 2001:1608:10:25::9249:d69bDyn DNSDyn DNS由甲骨文(ORACLE)公司提供,服务器地址:216.146.35.35 和 216.146.36.36Alternate DNSAlternate DNS主打广告拦截,服务器地址: 23.253.163.53 和 198.101.242.72OpenNIC DNSOpenNIC DNS是由OpenNIC计划提供的域名解析服务,特点是中立性,防劫持,提供舒适组服务器,请访问官网查看最近的服务器。UncensoredDNSUncensoredDNS是由个人(Thomas Steen Rasmussen)搭建的公共DNS服务,如其名主打无删减。服务器地址:91.239.100.100 和 2001:67c:28a4::FreeDNSFreeDNS提供自由、无日志的域名解析服务,有多组服务器:172.104.237.57 , 172.104.49.100 , 37.235.1.174 , 37.235.1.177 ,45.33.97.5Freenom World Public DNSFreenom World Public DNS是快速、隐私的域名解析服务,服务器地址:80.80.80.80 和 80.80.81.81注意事项请按照自身所在位置和需求就近选择服务器;如果服务器失效,请及时进入官网查看。例如许多网站列出的诺顿DNS在2018年已经停止服务;请优先选用大公司提供的服务,可靠且线路更快。 ...

February 24, 2019 · 1 min · jiezi

Flask 学习笔记(2) --- 申请域名和公网 IP

申请域名入门的话可以使用 GoDaddy 的域名, 挑最便宜的那种就好了, 7 块钱能用一年. 另外 Godaddy 也有一整套完整的建站方案, 不过价格略贵.公网 IP可以选择租赁附赠公网 IP 的 VPS, 阿里云腾讯云啥的可能还会有一整套的解决方案, 不过价格会贵一点. 也可以尝试国外的 VPS 厂商, 如 digitalocean, vultr, linode, bandwagon等等, 总之选择一个价格实惠, 而且 IP 可以 ping 通的 VPS 即可.设置 DNS假设你已经获得了域名 awesome.com 的使用权.以 Godaddy 的 dashboard 为例, 点击头像进入【My Product (我的产品)】, 点击域名 awesome.com 中的【DNS】选项, 然后在 Records (记录) 中点击【add (添加)】.接下来, 【Type (类型)】选择 A, 也就是把 domain -> ip 的映射记录.【host (主机)】填写 @, 也就是域名 awesome.com 本身.【Points to (指向)】填写你的 VPS 的 IP 地址.【TTL】选择 1 Hour.按照上述方法, 再添加一条记录, 其中【host (主机)】填写 www, 也就是把 www.awesome.com 也解析到你的 IP.最后, 回到你的 VPS 所在的 Dashboard, 进行类似的 DNS 解析设置即可.最后, 启动我们的 httpserverpython3 server.py稍等几分钟, 在浏览器中输入 http://awesome.com:8080 即可访问我们的网站 ...

February 13, 2019 · 1 min · jiezi

解决 docker 容器无法通过 IP 访问宿主机问题

问题起源在使用 docker 的过程中我不幸需要在 docker 容器中访问宿主机的 80 端口, 而这个 80 端口是另外一个容器 8080 端口映射出去的. 当我在容器里通过 docker 的网桥 172.17.0.1 访问宿主机时, 居然发现:curl: (7) Failed to connect to 172.17.0.1 port 80: No route to host查找问题原因可以确定的是容器与宿主机是有网络连接的, 因为可以在容器内部通过 172.17.0.1 Ping 通宿主机:root@930d07576eef:/# ping 172.17.0.1PING 172.17.0.1 (172.17.0.1) 56(84) bytes of data.64 bytes from 172.17.0.1: icmp_seq=1 ttl=64 time=0.130 ms也可以在容器内部访问其它内网和外网.iptables 显示也允许 docker 容器访问:# iptables –list | grep DOCKERDOCKER-ISOLATION all – anywhere anywhere DOCKER all – anywhere anywhere Chain DOCKER (1 references)Chain DOCKER-ISOLATION (1 references)之后在查找一些资料后发现这个问题: NO ROUTE TO HOST network request from container to host-ip:port published from other container.解释正如 Docker Community Forms 所言, 这是一个已知的 Bug, 宿主机的 80 端口允许其它计算机访问, 但是不允许来自本机的 Docker 容器访问. 必须通过设置 firewalld 规则允许本机的 Docker 容器访问.gypark 指出可以通过在 /etc/firewalld/zones/public.xml 中添加防火墙规则避免这个问题:<rule family=“ipv4”> <source address=“172.17.0.0/16” /> <accept /></rule>注意这里的 172.17.0.0/16 可以匹配 172.17.xx.xx IP 段的所有 IP.之后重启下防火墙:systemctl restart firewalld之后就可以在 docker 容器内部访问宿主机 80 端口.其它问题实际上当我又用 vmware 新开了一台虚拟机希望能重现这个问题的时候, 发现在新的虚拟机上居然没有类似的问题. 也就是说容器可以直接通过172.17.0.1访问宿主机 80 端口, 查看防火墙配置也没看到有172.17.xx.xx的白名单.猜测是由于在新的虚拟机安装的 docker 是 Docker version 1.12.5, build 047e51b/1.12.5, 也就是 Red Hat 从 docker 开源版本迁出开发的版本, 而之前的是 Docker version 17.06.2-ce, build cec0b72 属于 Docker-CE, 可能是 docker 版本有差异, Red Hat 顺便把那个 Known Bug 修复了. ...

January 9, 2019 · 1 min · jiezi

我们来说一说TCP神奇的40ms

本文由云+社区发表TCP是一个复杂的协议,每个机制在带来优势的同时也会引入其他的问题。 Nagel算法和delay ack机制是减少发送端和接收端包量的两个机制, 可以有效减少网络包量,避免拥塞。但是,在特定场景下, Nagel算法要求网络中只有一个未确认的包, 而delay ack机制需要等待更多的数据包, 再发送ACK回包, 导致发送和接收端等待对方发送数据, 造成死锁, 只有当delay ack超时后才能解开死锁,进而导致应用侧对外的延时高。 其他文字已经介绍了相关的机制, 已经有一些文章介绍这种时延的场景。本文结合具体的tcpdump包,分析触发delay ack的场景,相关的内核参数, 以及规避的方案。背景给redis加了一个proxy层, 压测的时候发现, 对写入命令,数据长度大于2k后, 性能下降非常明显, 只有直连redis-server的1/10. 而get请求影响并不是那么明显。分析观察系统的负载和网络包量情况, 都比较低, 网络包量也比较小, proxy内部的耗时也比较短。 无赖只能祭出tcpdump神奇, 果然有妖邪。22号tcp请求包, 42ms后服务端才返回了ack。 初步怀疑是网络层的延时导致了耗时增加。Google和km上找资料, 大概的解释是这样: 由于客户端打开了Nagel算法, 服务端未关闭延迟ack, 会导致延迟ack超时后,再发送ack,引起超时。原理Nagel算法,转自维基百科if there is new data to send if the window size >= MSS and available data is >= MSS send complete MSS segment now else if there is unconfirmed data still in the pipe enqueue data in the buffer until an acknowledge is received else send data immediately end if end ifend if简单讲, Nagel算法的规则是:如果发送内容大于1个MSS, 立即发送;如果之前没有包未被确认, 立即发送;如果之前有包未被确认, 缓存发送内容;如果收到ack, 立即发送缓存的内容。延迟ACK的源码如下:net/ipv4/tcp_input.c基本原理是:如果收到的数据内容大于一个MSS, 发送ACK;如果收到了接收窗口以为的数据, 发送ACK;如果处于quick mode, 发送ACK;如果收到乱序的数据, 发送ACK;其他, 延迟发送ACK其他都比较明确, quick mode是怎么判断的呢? 继续往下看代码:影响quick mode的一个因素是 ping pong的状态。 Pingpong是一个状态值, 用来标识当前tcp交互的状态, 以预测是否是W-R-W-R-W-R这种交互式的通讯模式, 如果处于, 可以用延迟ack, 利用Read的回包, 将Write的回包, 捎带给发送方。如上图所示, 默认pingpong = 0, 表示非交互式的, 服务端收到数据后, 立即返回ACK, 当服务端有数据响应时,服务端将pingpong = 1, 以后的交互中, 服务端不会立即返回ack,而是等待有数据或者ACK超时后响应。问题按照前面的的原理分析,应该每次都有ACK延迟的,为什么我们测试小于2K的数据时, 性能并没有受到影响呢?继续分析tcpdump包:按照Nagel算法和延迟ACK机制, 上面的交互如下图所示, 由于每次发生的数据都包含了完整的请求, 服务端处理完成后, 向客户端返回命令响应时, 将请求的ACK捎带给客户端,节约一次网络包。再分析2K的场景:如下表所示, 第22个包发送的数据小于MSS, 同时,pingpong = 1, 被认为是交互模式, 期待通过捎带ACK的方式来减少网络的包量。 但是, 服务端收到的数据,并不是一个完整的包,不能产生一次应答。服务端只能在等待40ms超时后,发送ACK响应包。 同时,从客户端来看,如果在发送一个包, 也可以打破已收数据 > MSS的限制。 但是,客户端受Nagel算法的限制, 一次只能有一个包未被确认,其他的数据只能被缓存起来, 等待发送。触发场景一次tcp请求的数据, 不能在服务端产生一次响应,或者小于一个MSS规避方案只有同时客户端打开Nagel算法, 服务端打开tcp_delay_ack才会导致前面的死锁状态。 解决方案可以从TCP的两端来入手。服务端:关闭tcp_delay_ack, 这样, 每个tcp请求包都会有一个ack及时响应, 不会出现延迟的情况。 操作方式: echo 1 > /proc/sys/net/ipv4/tcp_no_delay_ack 但是, 每个tcp请求都返回一个ack包, 导致网络包量的增加,关闭tcp延迟确认后, 网络包量大概增加了80%,在高峰期影响还是比较明显。2.设置TCP_QUICKACK属性。 但是需要每次recv后再设置一次。 对应我们的场景不太适合,需要修改服务端redis源码。客户端:关闭nagel算法,即设置socket tcp_no_delay属性。static void _set_tcp_nodelay(int fd) { int enable = 1; setsockopt(fd, IPPROTO_TCP, TCP_NODELAY, (void*)&enable, sizeof(enable)); } 避免多次写, 再读取的场景, 合并成一个大包的写;避免一次请求分成多个包发送, 最开始发送的包小于一个MSS,对我们的场景, 把第22号包的1424个字节缓存起来, 大于一个MSS的时候,再发送出去, 服务端立即返回响应, 客户端继续发送后续的数据, 完成交互,避免时延。此文已由作者授权腾讯云+社区发布 ...

December 24, 2018 · 1 min · jiezi