socket.gethostbyname(hostname) '192.168.0.103' 上面的代码在Windows下运行良好,但是无意中发现在Mac系统下运行不正常,返回的是本机回环地址127.0.0.1,而不是真正的...协议是(IP address, port)形式的元组,而对于IPV6协议是(address, port, flow info, scope id)形式的元组,也就是说,不管是IPV4还是IPV6,上面的函数都可以正确地获取...: 23>, 0, 0, '', ('fe80::b976:b065:27d:3747%10', 0, 0, 10)) (AddressFamily.AF_INET6: 23>, 0, 0, '',...('fe80::1456:951:2418:27cf%7', 0, 0, 7)) (AddressFamily.AF_INET: 2>, 0, 0, '', ('192.168.0.103', 0))...IPV4和IPV6地址,如果只想获取IPV4地址,再继续执行下面的代码: >>> [item[4][0] for item in addrs if ':' not in item[4][0]][0] '
所以,你应该有一个受限制账户而不是一直使用 root 账户。这不会给你的操作带来多大麻烦,因为你可以通过 sudo来进行任何你想要的操作。...这将允许你使用密码进行身份验证,而不是为每个设备生成和上传密钥对。 3、 只监听一个互联网协议。 在默认情况下,SSH守护进程同时监听IPv4和IPv6上的传入连接。...使用选项: · AddressFamily inet 只监听IPv4。 · AddressFamily inet6 只监听IPv6。...这意味着它从任何端口和任何网络接口接受来自任何外部地址(IPv4和IPv6)上的其它RPC客户端的传入TCP连接。...我们的 netstat输出说明NTPdate:1)接受服务器的公网IP地址的传入连接;2)通过本地主机进行通信;3)接受来自外部的连接。这些连接是通过端口123进行的,同时支持IPv4和IPv6。
所以,你应该有一个受限制账户而不是一直使用 root 账户。这不会给你的操作带来多大麻烦,因为你可以通过 sudo来进行任何你想要的操作。...这将允许你使用密码进行身份验证,而不是为每个设备生成和上传密钥对。 3、 只监听一个互联网协议。 在默认情况下,SSH 守护进程同时监听 IPv4 和 IPv6 上的传入连接。...使用选项: AddressFamily inet 只监听 IPv4。 AddressFamily inet6 只监听 IPv6。...这意味着它从任何端口和任何网络接口接受来自任何外部地址(IPv4 和 IPv6)上的其它 RPC 客户端的传入 TCP 连接。...这些连接是通过端口 123 进行的,同时支持 IPv4 和 IPv6。我们还看到了 RPC 打开的更多的套接字。
4、安全强化 SSH 接下来,进行以下三个更改: 禁用 SSH 密码认证 限制 root 远程登录 限制对 IPv4 或 IPv6 的访问 使用你选择的文本编辑器打开 /etc/ssh/sshd_config...选项将 SSH 服务限制为 IPv4 或 IPv6。...要将其更改为仅使用 IPv4(对大多数人来说应该没问题),请进行以下更改: AddressFamily inet 重新启动 SSH 服务以启用你的更改。...你可以使用 ss 命令查看所有正在运行的网络服务:(LCTT 译注:应该是只保留少部分,而所有确认无关的、无用的服务都应该停用或删除。)...$ sudo ss -atpu ss 的输出取决于你的操作系统。
本文主要介绍 IPv6 配置 DDNS 解析和 SSL 证书申请工具的开发历程和其中的相关知识。工具使用.NET开发,已开源。...知识点: 1.包含端口号的 IPv6 地址 http://[0:0:0:0:0:ffff:4137:270a]:9080/2.IPv6 监听的 :: 和 IPv4 的 0.0.0.0 等效3.IPv6...监听的 ::1 和 IPv4 的 127.0.0.1 等效,都是环回接口 什么是 DDNS 我想大家应该都清楚域名解析是什么,就是将不好记的IPv4地址变为好记的域名嘛。...使用 IPv6 来解析,默认获取 IPv4 --ip (Default: ) If set will be used....目前手机的网络应该是都有 IPv6 地址的,但是如果你使用的网络只接入了 IPv4,那么你就不能访问纯IPv6的服务器。如果运营商支持,但是你的路由器不支持,你也是无法使用 IPv6 网络的。
1:IP地址与网段的基本处理 #辨别IPv4与IPv6 >>> import IPy >>> from IPy import IP >>> >>> IP("192.168.0.0/24").version...() #判断类型为IPv4 4 >>> >>> IP("::1").version() #判断类型为IPv6 6 >>> #通过指定网段输出该网段的IP...在某些平台(例如Linux)上,此字段的可用性根据进程权限而变化(需要root)。...kind参数的值包括: inet:ipv4和ipv6 inet4:ipv4 inet6:ipv6 tcp:TCP tcp4:TCP over ipv4 tcp6:TCP over ipv6 udp:UDP...dup4:基于ipv4的udp cpu6:基于ipv6的udp Unix:UNIX套接字(udp和TCP协议) all:所有可能的家庭和协议的总和 In [86]: psutil.net_connections
根据proxy protocol协议,该协议可以分为两个版本,分别是v1和v2,其中v1版本是文本协议,而v2版本支持二进制的格式。...其中local表示该请求是代理服务器主动发起的,而不是客户端发起的,比如监控检测等请求。proxy表示该请求是一个代理请求。...family类型,分别是unspec,ipv4,ipv6和unix。...分别对应未知family,ipv4,ipv6和unix domain socket。...因为AddressFamily和TransportProtocol实际上是同一个byte,所以经过组合之后可以得到下面的几个枚举值: UNKNOWN(TPAF_UNKNOWN_BYTE, AddressFamily.AF_UNSPEC
这篇文章,我们不背概念,而是从实际使用场景出发,把 IPv4 和 IPv6 讲透。一、先说结论:IPv4 和 IPv6,不是简单的“新旧关系”在很多教程里,IPv6 被描述成 IPv4 的“升级版”。...五、为什么现在做网络环境规划,绕不开 IPv6?原因并不是“IPv6 技术更先进”,而是:平台正在逐渐适应“地址不再稀缺”的世界。...这带来两个趋势:1️⃣ 对单一 IP 行为的观察更细致2️⃣ 对环境一致性的要求更高在这种背景下,不论是服务器部署、数据访问,还是代理 IP 使用, IPv4 / IPv6 的选择,已经开始影响结果,而不是参数...这也是为什么真正成熟的网络方案,往往不是“押宝某一种协议”,而是具备灵活切换和组合能力。八、你应该如何看待 IPv4 和 IPv6?...,而不是立场。
UDP TCP TCP UDP TCP TCP TCP TCP TCP 3.Socket函数 #创建Socket连接,比Connect更高级,可以自动解析不是数字的...host地址,兼容IPv4和 IPv6 socket.create_connection(address=('localhost',4320),timeout=4,source_address=('localhost...=socket.IPPROTO_TCP,flags=0) output: [(AddressFamily.AF_INET: 2>, , 6, ''...(socket.getfqdn(socket.gethostname())) #将ip地址转化为主机名,返回三元组(主机名,相同地址的其它可用主机名的列表,IPv4地址列表),支持IPV4/IPV6...#假如端口被socket使用过,并且利用socket.close()来关闭连接,但此时端口还没有释放,要经过TIME_WAIT的过程之后才能使用;为了实现端口的马上复用,可以选择setsocket()函数来达到目的
网络中的设备效果图: 2、IP地址的表现形式 说明: IP地址分为两类:IPv4和IPv6 IPv4是目前使用的ip地址 IPv6是未来使用的ip地址 IPv4是由点分十进制组成 IPv6是由冒号十六进制组成...检查是否能上网 ping当前局域网的ip地址是否在同一局域网内 ping 127.0.0.1检查本地网卡是否正常 6、小结 IP地址的作用是标识网络中唯一的一台设备 IP地址的表现形式分为IPv4和IPv6...查看网卡信息:ifconfig 检查网络:ping 端口和端口号的介绍 1、问题思考 不同电脑上的飞秋之间进行数据通信,它是如何保证把数据给飞秋而不是给其他软件呢?..., Type) 参数说明: AddressFamily表示IP地址类型,分为IPv4和IPv6 Type表示传输协议类型 方法说明: connect((host,port))表示和服务端套接字建立连接,..., Type) 参数说明: AddressFamily表示IP地址类型,分为IPv4和IPv6 Type表示传输协议类型 方法说明: bind((host, port))表示绑定端口号,host是ip地址
三、两者的相似点 都指向本机 不管是输入 localhost 还是 127.0.0.1,最终都会将请求发送到你的电脑,而不是其他地方。...,因为不需要额外的解析步骤 五、为什么 localhost 和 127.0.0.1 有时表现不同?...IPv4 和 IPv6 的影响 localhost 默认可以解析为 IPv4(127.0.0.1)或 IPv6(::1)地址,具体取决于系统配置。...如果你的程序只支持 IPv4,而 localhost 被解析为 IPv6 地址,可能会导致连接失败。...防火墙或网络配置的限制 某些网络工具或防火墙规则会区别对待域名和 IP 地址。如果只允许 127.0.0.1 通信,而不允许 localhost,可能会引发问题。 六、在开发中如何选择?
而路由选择是指确定分组从源到目的地所定位的路径的选择。我们后面会经常提到转发和路由选择这两个名词。 那么此处就有一个问题,路由器怎么知道有哪些路径可以选择呢?...一般这种路由器不是单独的路由器,而是工作站或者服务器充当的路由,这种路由器内部中,路由处理器其实就是 CPU,而输入端口其实只是网卡。...而不是数据报刚开始发送后,网络中所有的通路都会显示出来,这种多次跳转也叫做多跳路由。...IPv4 地址的长度为 32 位,而 IPv6 地址的长度为 128 位。...IPv6 随着端系统接入的越来越多,IPv4 已经无法满足分配了,所以,IPv6 应运而生,IPv6 就是为了解决 IPv4 的地址耗尽问题而被标准化的网际协议。
而作为即时通讯开发者来说,了解IPv6就显的尤为迫切,说不定某天你的IM就会因为IPv6问题而导致无法通信的局面出现。 本文将用浅显易懂的文字,带你了解到底什么是IPv6。...IPv4的地址总数是2的32次方,也就是约42.9亿个。而全球的网民总数早已超过这个数目。 所以说,IPv4地址池接近枯竭,根本无法满足互联网发展的需要。...IPV6使用新的头部格式,就简化和加速了路由选择过程,提高了效率; …… 7、IPv6的优点这么多,为什么之前普及却这么慢? IPv6优点这么多,为什么它问世已经20年了,还是没有完全替代IPv4呢?...所以,运营商和ISP都没有动力去启用IPv6。 至于设备商或手机电脑厂商,出于提前考虑,早已普遍支持了IPv6,意见并不是很大,也决定不了什么。必竟,提供基础设施服务的运营商们更强势。...[4] 科普:一文读懂IPv6是什么? [5] 漫话:全球IPv4地址正式耗尽?到底什么是IPv4和IPv6?
协议是网络进行运作的规则和标准。 我们现在所说的上网,就是上“国际互联网(Internet)”。互联网是基于TCP/IP协议族的,而IP是这个协议族中的核心组成部分。 ? IP是网络层协议。...为什么要用IPv6取代IPv4呢? 最主要的原因,就是地址数量不够用了。 IPv4迄今为止已经使用了30多年。...没关系,总之大家记住,IPv6的优点很多。 为什么IPv6没有迅速取代v4? 既然IPv6优点这么多,为什么它问世已经20年了,还是没有完全替代IPv4呢? 这里面的水就很深了。主要还是和利益有关。...所以,运营商和ISP其实都不是很喜欢IPv6。 至于设备商或手机电脑厂商,出于提前考虑,早已普遍支持了IPv6,意见并不是很大,也决定不了什么。...当我们连接运营商LTE网络的时候,它一般会分配一个IPv4地址和一个IPv6地址。双栈环境下,用户自动选择使用IPv6或者IPv4协议去连接远端服务。
网络编程之一文读懂什么是IPv6 复习一下什么是IPv4? IPv6又是什么? 为什么要使用IPv6? IPv6会带给我们什么? IPv6的优点这么多,为什么之前普及却这么慢?...其实,IPv6并不是新技术,从IPv6最早的工作组成立1992年到现在,已过去27年。在互联网技术的发展历程中,IPv6年龄甚至有些太大了。...IPv4的地址总数是2的32次方,也就是约42.9亿个。而全球的网民总数早已超过这个数目。 所以说,IPv4地址池接近枯竭,根本无法满足互联网发展的需要。...IPV6使用新的头部格式,就简化和加速了路由选择过程,提高了效率; …… IPv6的优点这么多,为什么之前普及却这么慢? IPv6优点这么多,为什么它问世已经20年了,还是没有完全替代IPv4呢?...所以,运营商和ISP都没有动力去启用IPv6。 至于设备商或手机电脑厂商,出于提前考虑,早已普遍支持了IPv6,意见并不是很大,也决定不了什么。必竟,提供基础设施服务的运营商们更强势。
本文想要分析的问题是,为什么 IPv6 协议有如此之多的好处并且能够解决 IPv4 的地址短缺问题,但是哪怕在最初预估的 2003 年后又过了 17 年,IPv6 协议也没有被大规模采纳。...9]: NAT 使用的端口号是用于进程寻址的,而不是用于主机寻址的; NAT 路由器作为第三层(网络层)的设备,它应当只处理达到网络层的分组; NAT 违反了主机应当直接彼此对话的原则; 虽然 NAT...IPv6 带来的好处;如果 IPv6 协议与 IPv4 协议是向后兼容的,那么 IPv6 的硬件可以同时处理 IPv4 和 IPv6 的数据包,只要使用 IPv6 设备替换 IPv4 设备就可以给整个网络无缝升级...总结 IPv4 协议从 1981 年发布到今天已经过去了将近 40 年,在过去的这段时间里,它作为互联网协议簇中的重要协议承担着分组转发和路由选择的重要责任,随着网络环境和终端设备变得越来越复杂,我们也需要更多的...为什么没有听说过 IPv5 协议? 你觉得 IPv6 协议的份额会在多久之后超过 IPv4?
下面看一下如何进行使用: 创建一个socket: socket.socket(AddressFamily,Type) # 用于UDP协议,数据报套接字,AddressFamily我们选用ipv4类型 udp_socket...= socket.socket(socket.AF_INET, socket.SOCK_DGRAM) # 用于TCP协议,基于字节流的套接字,AddressFamily我们选用ipv4类型 tcp_socket...= socket.socket(socket.AF_INET, socket.SOCK_STREAM) Address Family:IP地址类型;AFINET表示ipv4类型、AFINET6表示ipv6...gevent内部封装的greenlet,其原理是当一个greenlet遇到IO(指的是input output 输入输出,比如网络、文件操作等)操作时,比如访问网络,就自动切换到其他的greenlet,...由于IO操作非常耗时,经常使程序处于等待状态,有了gevent为我们自动切换协程,就保证总有greenlet在运行,而不是等待IO 获取当前协程: gevent.getcurrent() 创建协程并开启
协议是网络进行运作的规则和标准。 我们现在所说的上网,就是上“国际互联网(Internet)”。互联网是基于TCP/IP协议族的,而IP是这个协议族中的核心组成部分。 ?...) 既然IPv6是第6版(Version 6),说明在它之前有更老的版本。我们现在广泛使用的,就是IPv4,也就是第4版(Version 4)。 ? 为什么要用IPv6取代IPv4呢?...而Windows Vista及以后的版本,如Win7、Win8、Win10等,都已经完全支持IPv6。 ?...没关系,总之大家记住,IPv6的优点很多。 为什么IPv6没有迅速取代v4? 既然IPv6优点这么多,为什么它问世已经20年了,还是没有完全替代IPv4呢? 这里面的水就很深了。。。...所以,运营商和ISP都没有动力去启用IPv6。 至于设备商或手机电脑厂商,出于提前考虑,早已普遍支持了IPv6,意见并不是很大,也决定不了什么。 ?
为什么要引入扩展头部这个概念,这里也是 IPv6 对 IPv4 改进的一个方面,用扩展头部取代了 IPv4 的可选项信息,精简了 IPv6 的头部,增强了 IPv6 的扩展性。...而 IPv4 私网对应于 IPv6 的什么地址,后面会介绍。...可能看到这里,有同学会跳出来说:IPv6 不是为了解决 IPv4 地址耗尽的问题吗,既然 IPv6 的地址空间那么大,可以为每一个网络节点分配公网 IPv6 的节点,那为什么 IPv6 还需要支持私网?...web 服务没有选择像 apache 或者 nginx 这样的庞然大物,而选择了很轻量的 boa。...但为什么 IPv6 已经发展了十几年了,目前在我们的工作和生活中还是比较少接触和使用。