在线文档教程
Ruby 2.4

Socket::Constants

module Socket::Constants

Socket :: Constants提供与套接字相关的常量。文档中列出了所有可能的套接字常量,但它们可能并不都在您的平台上。

如果底层平台没有定义常量,则没有定义相应的Ruby常量。

常量

AF_APPLETALK

AppleTalk协议

AF_ATM

异步传输模式

AF_AX25

AX.25 protocol

AF_CCITT

CCITT (now ITU-T) protocols

AF_CHAOS

MIT CHAOS protocols

AF_CNT

计算机网络技术

AF_COIP

Connection-oriented IP

AF_DATAKIT

Datakit protocol

AF_DEC

DECnet protocol

AF_DLI

DEC直接数据链路接口协议

AF_E164

CCITT (ITU-T) E.164 recommendation

AF_ECMA

欧洲电脑制造商协议

AF_HYLINK

NSC Hyperchannel协议

AF_IMPLINK

ARPANET IMP protocol

AF_INET

IPv4 protocol

AF_INET6

IPv6 protocol

AF_IPX

IPX protocol

AF_ISDN

综合业务数字网络

AF_ISO

ISO开放系统互连协议

AF_LAT

局域传输协议

AF_LINK

链路层接口

AF_LOCAL

主机内部协议

AF_MAX

此平台的最大地址族

AF_NATM

Native ATM access

AF_NDRV

网络驱动程序原始访问

AF_NETBIOS

NetBIOS

AF_NETGRAPH

Netgraph套接字

AF_NS

XEROX NS protocols

AF_OSI

ISO开放系统互连协议

AF_PACKET

直接链接层访问

AF_PPP

点对点协议

AF_PUP

PARC通用分组协议

AF_ROUTE

内部路由协议

AF_SIP

简单的Internet协议

AF_SNA

IBM SNA protocol

AF_SYSTEM AF_UNIX

UNIX sockets

AF_UNSPEC

未指定协议,任何受支持的地址系列

AI_ADDRCONFIG

只有在分配了任何地址时才接受

AI_ALL

允许所有地址

AI_CANONNAME

填写规范名称

AI_DEFAULT

getaddrinfo的默认标志

AI_MASK

getaddrinfo的有效标志掩码(不适用于应用程序)

AI_NUMERICHOST

防止主机名称解析

AI_NUMERICSERV

防止服务名称解析

AI_PASSIVE

获取使用bind()的地址

AI_V4MAPPED

接受IPv4映射的IPv6地址

AI_V4MAPPED_CFG

如果内核支持它,则接受IPv4映射地址

EAI_ADDRFAMILY

不支持主机名的地址族

EAI_AGAIN

名称解析中的临时失败

EAI_BADFLAGS

Invalid flags

EAI_BADHINTS

提示值无效

EAI_FAIL

不可恢复的名称解析失败

EAI_FAMILY

地址家族不受支持

EAI_MAX

来自getaddrinfo的最大错误代码

EAI_MEMORY

内存分配失败

EAI_NODATA

没有与主机名关联的地址

EAI_NONAME

主机名或服务名称,或未知

EAI_OVERFLOW

参数缓冲区溢出

EAI_PROTOCOL

解决的协议是未知的

EAI_SERVICE

套接字类型不支持Servname

EAI_SOCKTYPE

套接字类型不受支持

EAI_SYSTEM

errno中返回系统错误

IFF_802_1Q_VLAN

802.1Q VLAN device

IFF_ALLMULTI

接收所有组播数据包

IFF_ALTPHYS

使用备用物理连接

IFF_AUTOMEDIA

自动媒体选择活动

IFF_BONDING

绑定主机或从机

IFF_BRIDGE_PORT

设备用作网桥端口

IFF_BROADCAST

广播地址有效

IFF_CANTCHANGE

标志不可更改

IFF_CANTCONFIG

使用ioctl(2)无法配置

IFF_DEBUG

打开调试

IFF_DISABLE_NETPOLL

在运行时禁用netpoll

IFF_DONT_BRIDGE

不允许桥接这个以太网开发

IFF_DORMANT

司机信号休眠

IFF_DRV_OACTIVE

tx硬件队列已满

IFF_DRV_RUNNING

资源分配

IFF_DYING

界面正在收敛

IFF_DYNAMIC

具有更改地址的拨号设备

IFF_EBRIDGE

以太网桥接设备

IFF_ECHO

回送发送数据包

IFF_ISATAP

ISATAP接口(RFC4214)

IFF_LINK0

每个链路层定义了位0

IFF_LINK1

每个链路层定义位1

IFF_LINK2

每个链路层定义位2

IFF_LIVE_ADDR_CHANGE

硬件地址在运行时发生变化

IFF_LOOPBACK

loopback net

IFF_LOWER_UP

driver signals L1 up

IFF_MACVLAN_PORT

设备用作macvlan端口

IFF_MASTER

负载平衡器的主人

IFF_MASTER_8023AD

绑定主机,802.3ad。

IFF_MASTER_ALB

结合主人,平衡白蛋白。

IFF_MASTER_ARPMON

绑定大师,ARP mon在使用中

IFF_MONITOR

用户请求的监视器模式

IFF_MULTICAST

supports multicast

IFF_NOARP

没有地址解析协议

IFF_NOTRAILERS

避免使用拖车

IFF_OACTIVE

传输正在进行中

IFF_OVS_DATAPATH

设备用作Open vSwitch数据路径端口

IFF_POINTOPOINT

点对点链接

IFF_PORTSEL

可以设置媒体类型

IFF_PPROMISC

用户请求的promisc模式

IFF_PROMISC

接收所有数据包

IFF_RENAMING

界面正在重命名

IFF_ROUTE

路由条目已安装

IFF_RUNNING

资源分配

IFF_SIMPLEX

听不到自己的传输

IFF_SLAVE

负载均衡器的从属者

IFF_SLAVE_INACTIVE

绑定奴隶不是curr。活性

IFF_SLAVE_NEEDARP

需要ARPs进行验证

IFF_SMART

接口管理自己的路由

IFF_STATICARP

static ARP

IFF_SUPP_NOFCS

发送自定义的FCS

IFF_TEAM_PORT

用作团队端口

IFF_TX_SKB_SHARING

在传输上共享skbs

IFF_UNICAST_FLT

单播过滤

IFF_UP

界面已启动

IFF_VOLATILE

易失标志

IFF_WAN_HDLC

WAN HDLC设备

IFF_XMIT_DST_RELEASE

dev_hard_start_xmit()被允许释放skb-> dst

IFNAMSIZ

最大接口名称大小

IF_NAMESIZE

最大接口名称大小

INADDR_ALLHOSTS_GROUP

该子集上所有系统的多播组

INADDR_ANY

绑定到INADDR_ANY的套接字接收来自所有接口的数据包并从默认IP地址发送数据包

INADDR_BROADCAST

网络广播地址

INADDR_LOOPBACK

环回地址

INADDR_MAX_LOCAL_GROUP

最后一个本地网络多播组

INADDR_NONE

用于匹配无效IP地址的位掩码

INADDR_UNSPEC_GROUP

保留的多播组

INET6_ADDRSTRLEN

IPv6地址字符串的最大长度

INET_ADDRSTRLEN

IPv4地址字符串的最大长度

IPPORT_RESERVED

绑定或连接的默认最小地址

IPPORT_USERRESERVED

绑定或连接的默认最大地址

IPPROTO_AH

IP6身份验证标头

IPPROTO_BIP IPPROTO_DSTOPTS

IP6目标选项

IPPROTO_EGP

外部网关协议

IPPROTO_EON

ISO cnlp

IPPROTO_ESP

IP6封装的安全负载

IPPROTO_FRAGMENT

IP6分段头

IPPROTO_GGP

网关协议网关

IPPROTO_HELLO

“你好”路由协议

IPPROTO_HOPOPTS

IP6逐跳选项

IPPROTO_ICMP

控制消息协议

IPPROTO_ICMPV6

ICMP6

IPPROTO_IDP

XNS IDP

IPPROTO_IGMP

组管理协议

IPPROTO_IP

IP虚拟协议

IPPROTO_IPV6

IP6 header

IPPROTO_MAX

最大恒定IPPROTO

IPPROTO_ND

Sun网盘协议

IPPROTO_NONE

IP6没有下一个标题

IPPROTO_PUP

PARC通用分组协议

IPPROTO_RAW

原始IP数据包

IPPROTO_ROUTING

IP6路由头

IPPROTO_TCP

TCP

IPPROTO_TP

ISO传输协议类4

IPPROTO_UDP

UDP

IPPROTO_XTP

Xpress传输协议

IPV6_CHECKSUM

原始插座的校验和偏移量

IPV6_DONTFRAG

不要分组数据包

IPV6_DSTOPTS

目的地选项

IPV6_HOPLIMIT

跳跃限制

IPV6_HOPOPTS

Hop-by-hop option

IPV6_JOIN_GROUP

加入小组成员资格

IPV6_LEAVE_GROUP

留下组员资格

IPV6_MULTICAST_HOPS

IP6组播跳数

IPV6_MULTICAST_IF

IP6多播接口

IPV6_MULTICAST_LOOP

IP6组播环回

IPV6_NEXTHOP

下一跳地址

IPV6_PATHMTU

检索当前路径MTU

IPV6_PKTINFO

用数据报接收数据包信息

IPV6_RECVDSTOPTS

接收所有IP6选项以进行响应

IPV6_RECVHOPLIMIT

用数据报接收跳数限制

IPV6_RECVHOPOPTS

接收逐跳选项

IPV6_RECVPATHMTU

用数据报接收当前路径MTU

IPV6_RECVPKTINFO

接收目标IP地址和传入界面

IPV6_RECVRTHDR

接收路由头

IPV6_RECVTCLASS

接收流量类别

IPV6_RTHDR

允许删除粘性路由头

IPV6_RTHDRDSTOPTS

允许删除粘性目标选项标题

IPV6_RTHDR_TYPE_0

路由头部类型0

IPV6_TCLASS

指定流量类别

IPV6_UNICAST_HOPS

IP6单播跳数

IPV6_USE_MIN_MTU

使用最小的MTU大小

IPV6_V6ONLY

仅将IPv6绑定到通配符绑定

IPX_TYPE IP_ADD_MEMBERSHIP

添加多播组成员资格

IP_ADD_SOURCE_MEMBERSHIP

添加多播组成员资格

IP_BLOCK_SOURCE

阻止具有给定源地址的IPv4多播数据包

IP_DEFAULT_MULTICAST_LOOP

默认组播环回

IP_DEFAULT_MULTICAST_TTL

Default multicast TTL

IP_DONTFRAG

不要分组数据包

IP_DROP_MEMBERSHIP

删除多播组成员资格

IP_DROP_SOURCE_MEMBERSHIP

删除多播组成员资格

IP_FREEBIND

允许绑定到不存在的IP地址

IP_HDRINCL

标题包含在数据中

IP_IPSEC_POLICY

IPsec安全策略

IP_MAX_MEMBERSHIPS

套接字可以加入的最大组播组数量

IP_MINTTL

允许接收数据包的最小TTL

IP_MSFILTER

多播源过滤

IP_MTU

套接字的最大传输单位

IP_MTU_DISCOVER

MT路径发现

IP_MULTICAST_IF

IP组播接口

IP_MULTICAST_LOOP

IP组播环回

IP_MULTICAST_TTL

IP组播TTL

IP_ONESBCAST

强制传出的广播数据报具有无向广播地址

IP_OPTIONS

IP选项包含在数据包中

IP_PASSSEC

用数据报检索安全上下文

IP_PKTINFO

用数据报接收数据包信息

IP_PKTOPTIONS

用数据报接收数据包选项

IP_PMTUDISC_DO

始终发送DF帧

IP_PMTUDISC_DONT

永远不要发送DF帧

IP_PMTUDISC_WANT

使用每条路线提示

IP_PORTRANGE

为未指定端口号的套接字设置端口范围

IP_RECVDSTADDR

用数据报接收IP目标地址

IP_RECVERR

启用扩展可靠的错误消息传递

IP_RECVIF

用数据报接收接口信息

IP_RECVOPTS

用数据报接收所有IP选项

IP_RECVRETOPTS

接收所有IP选项以进行响应

IP_RECVSLLA

用数据报接收链路层地址

IP_RECVTOS

接收传入数据包的TOS

IP_RECVTTL

用数据报接收IP TTL

IP_RETOPTS

IP选项包含在数据报中

IP_ROUTER_ALERT

通知转接路由器更仔细地检查IP数据包的内容

IP_SENDSRCADDR

传出UDP数据报的源地址

IP_TOS

IP服务类型

IP_TRANSPARENT

透明代理

IP_TTL

IP生存时间

IP_UNBLOCK_SOURCE

使用给定源地址取消阻止IPv4组播数据包

IP_XFRM_POLICY LOCAL_CONNWAIT

连接块直到被接受

LOCAL_CREDS

将凭据传递给接收方

LOCAL_PEERCRED

检索对等证书

MCAST_BLOCK_SOURCE

阻止来自此源的多播数据包

MCAST_EXCLUDE

独有的组播源过滤器

MCAST_INCLUDE

包含多播源过滤器

MCAST_JOIN_GROUP

加入一个多播组

MCAST_JOIN_SOURCE_GROUP

加入一个组播源组

MCAST_LEAVE_GROUP

保留一个多播组

MCAST_LEAVE_SOURCE_GROUP

保留多播源组

MCAST_MSFILTER

多播源过滤

MCAST_UNBLOCK_SOURCE

取消阻止来自此源的组播数据包

MSG_COMPAT

记录结束

MSG_CONFIRM

确认路径有效性

MSG_CTRUNC

控制数据在交付之前丢失

MSG_DONTROUTE

发送时不使用路由表

MSG_DONTWAIT

该消息应该是非阻塞的

MSG_EOF

数据完成连接

MSG_EOR

数据完成记录

MSG_ERRQUEUE

从错误队列获取消息

MSG_FASTOPEN

减少握手过程的步骤

MSG_FIN MSG_FLUSH

开始保留序列。转储到so_temp

MSG_HAVEMORE

数据准备好被读取

MSG_HOLD

在so_temp中保存片段

MSG_MORE

发件人将发送更多

MSG_NOSIGNAL

不要生成SIGPIPE

MSG_OOB

处理带外数据

MSG_PEEK

查看收到的消息

MSG_PROXY

等待完整的请求

MSG_RCVMORE

数据保留在当前数据包中

MSG_RST MSG_SEND

在so_temp中发送数据包

MSG_SYN MSG_TRUNC

交货前丢弃数据

MSG_WAITALL

等待完整的请求或错误

NI_DGRAM

指定的服务是数据报服务(查找UDP端口)

NI_MAXHOST

主机名的最大长度

NI_MAXSERV

服务名称的最大长度

NI_NAMEREQD

名字是必需的

NI_NOFQDN

本地主机不需要FQDN,只返回本地部分

NI_NUMERICHOST

返回一个数字地址

NI_NUMERICSERV

将服务名称作为数字字符串返回

PF_APPLETALK

AppleTalk协议

PF_ATM

异步传输模式

PF_AX25

AX.25 protocol

PF_CCITT

CCITT (now ITU-T) protocols

PF_CHAOS

MIT CHAOS protocols

PF_CNT

计算机网络技术

PF_COIP

面向连接的IP

PF_DATAKIT

Datakit协议

PF_DEC

DECnet协议

PF_DLI

DEC直接数据链路接口协议

PF_ECMA

欧洲电脑制造商协议

PF_HYLINK

NSC Hyperchannel协议

PF_IMPLINK

ARPANET IMP协议

PF_INET

IPv4协议

PF_INET6

IPv6协议

PF_IPX

IPX协议

PF_ISDN

综合业务数字网络

PF_ISO

ISO开放系统互连协议

PF_KEY PF_LAT

局域传输协议

PF_LINK

链路层接口

PF_LOCAL

主机内部协议

PF_MAX

此平台的最大地址族

PF_NATM

本地ATM访问

PF_NDRV

网络驱动程序原始访问

PF_NETBIOS

NetBIOS

PF_NETGRAPH

Netgraph套接字

PF_NS

XEROX NS协议

PF_OSI

ISO开放系统互连协议

PF_PACKET

直接链接层访问

PF_PIP PF_PPP

点对点协议

PF_PUP

PARC通用分组协议

PF_ROUTE

内部路由协议

PF_RTIP PF_SIP

简单的Internet协议

PF_SNA

IBM SNA协议

PF_SYSTEM PF_UNIX

UNIX套接字

PF_UNSPEC

未指定协议,任何受支持的地址系列

PF_XTP

eXpress传输协议

SCM_BINTIME

Timestamp (bintime)

SCM_CREDENTIALS

发件人的凭据

SCM_CREDS

流程凭证

SCM_RIGHTS

Access rights

SCM_TIMESTAMP

Timestamp (timeval)

SCM_TIMESTAMPING

Timestamp (timespec list) (Linux 2.6.30)

SCM_TIMESTAMPNS

Timespec (timespec)

SCM_UCRED

用户凭据

SCM_WIFI_STATUS

Wifi status (Linux 3.3)

SHUT_RD

关闭套接字的读取侧

SHUT_RDWR

关闭套接字的两侧

SHUT_WR

关闭套接字的写入侧

SOCK_DGRAM

数据报套接字提供无连接,不可靠的消息

SOCK_PACKET

设备级数据包访问

SOCK_RAW

原始套接字为直接访问或实现网络协议提供低级访问

SOCK_RDM

可靠的数据报套接字提供可靠的消息传递

SOCK_SEQPACKET

顺序数据包套接字为数据报提供顺序,可靠的双向连接

SOCK_STREAM

流套接字为字节流提供有序的,可靠的双向连接

SOL_ATALK

AppleTalk socket options

SOL_AX25

AX.25套接字选项

SOL_IP

IP套接字选项

SOL_IPX

IPX套接字选项

SOL_SOCKET

套接字级选项

SOL_TCP

TCP套接字选项

SOL_UDP

UDP套接字选项

SOMAXCONN

可能为套接字排队的最大连接请求

SOPRI_BACKGROUND

后台套接字优先

SOPRI_INTERACTIVE

交互式插槽优先

SOPRI_NORMAL

正常的套接字优先

SO_ACCEPTCONN

Socket已经调用了listen()

SO_ACCEPTFILTER

有一个接受过滤器

SO_ALLZONES

绕过区域边界

SO_ATTACH_FILTER

附加接受过滤器

SO_BINDTODEVICE

只从给定接口发送数据包

SO_BINTIME

接收数据报的时间戳(bintime)

SO_BPF_EXTENSIONS

支持查询的BPF扩展(Linux 3.14)

SO_BROADCAST

允许发送广播消息

SO_BUSY_POLL

为低延迟轮询设置阈值(微秒)(Linux 3.11)

SO_DEBUG

调试信息记录

SO_DETACH_FILTER

分离接受过滤器

SO_DOMAIN

给出的域()(Linux 2.6.32)

SO_DONTROUTE

使用接口地址

SO_DONTTRUNC

保留未读数据

SO_ERROR

获取并清除错误状态

SO_GET_FILTER

Obtain filter set by SO_ATTACH_FILTER (Linux 3.8)

SO_KEEPALIVE

保持连接活着

SO_LINGER

如果数据存在,则关闭

SO_LOCK_FILTER

锁定连接到插座的过滤器(Linux 3.9)

SO_MAC_EXEMPT

未标记同行的强制访问控制豁免

SO_MARK

设置标记路由标记(Linux 2.6.25)

SO_MAX_PACING_RATE

限制传输层计算的速率。每秒字节数

SO_NKE

安装套接字级网络内核扩展

SO_NOFCS

设置套接字的netns(Linux 3.4)

SO_NOSIGPIPE

不要在EPIPE上SIGPIPE

SO_NO_CHECK

禁用校验

SO_NREAD

获取第一个数据包字节数

SO_OOBINLINE

在线接收收到的带外数据

SO_PASSCRED

接收SCM_CREDENTIALS消息

SO_PASSSEC

切换安全上下文传递(Linux 2.6.18)

SO_PEEK_OFF

Set the peek offset (Linux 3.4)

SO_PEERCRED

连接到此套接字的外部进程的凭据

SO_PEERNAME

连接用户的名称

SO_PEERSEC

获取安全凭证(Linux 2.6.2)

SO_PRIORITY

此套接字上所有数据包的协议定义优先级

SO_PROTOCOL

给出的socket()(Linux 2.6.32)

SO_RCVBUF

接收缓冲区大小

SO_RCVBUFFORCE

接收缓冲区大小,无rmem_max限制(Linux 2.6.14)

SO_RCVLOWAT

接收低水位标志

SO_RCVTIMEO

接收超时

SO_RECVUCRED

用数据报接收用户证书

SO_REUSEADDR

允许本地地址重用

SO_REUSEPORT

允许本地地址和端口重用

SO_RXQ_OVFL

切换cmsg丢弃的数据包数量(Linux 2.6.33)

SO_SECURITY_AUTHENTICATION SO_SECURITY_ENCRYPTION_NETWORK SO_SECURITY_ENCRYPTION_TRANSPORT SO_SELECT_ERR_QUEUE

使用errorfds()选择()检测套接字错误队列(Linux 3.10)

SO_SNDBUF

发送缓冲区大小

SO_SNDBUFFORCE

发送无wmem_max限制的缓冲区大小(Linux 2.6.14)

SO_SNDLOWAT

发送低水位标志

SO_SNDTIMEO

发送超时

SO_TIMESTAMP

接收数据报的时间戳(timeval)

SO_TIMESTAMPING

传入和传出数据包的时间标记(Linux 2.6.30)

SO_TIMESTAMPNS

接收数据报的纳秒时间戳(timespec)

SO_TYPE

获取套接字类型

SO_USELOOPBACK

尽可能旁路硬件

SO_WANTMORE

在更多数据准备就绪时给出提示

SO_WANTOOBFLAG

在接收MSG_FLAG时需要OOB数据

SO_WIFI_STATUS

切换cmsg为wifi状态(Linux 3.3)

TCP_CONGESTION

TCP拥塞控制算法(Linux 2.6.13,glibc 2.6)

TCP_COOKIE_TRANSACTIONS

TCP Cookie事务(Linux 2.6.33,glibc 2.18)

TCP_CORK

不要发送部分帧(Linux 2.2,glibc 2.2)

TCP_DEFER_ACCEPT

数据准备就绪之前不要通知监听套接字(Linux 2.4,glibc 2.2)

TCP_FASTOPEN

减少握手过程的步骤(Linux 3.7,glibc 2.18)

TCP_INFO

检索有关此套接字的信息(Linux 2.4,glibc 2.2)

TCP_KEEPCNT

丢弃连接前允许的最大Keepalive探测数(Linux 2.4,glibc 2.2)

TCP_KEEPIDLE

Keepalive探测器发送前的空闲时间(Linux 2.4,glibc 2.2)

TCP_KEEPINTVL

Keepalive探测器之间的时间间隔(Linux 2.4,glibc 2.2)

TCP_LINGER2

孤儿FIN_WAIT2套接字的生命周期(Linux 2.4,glibc 2.2)

TCP_MAXSEG

设置最大片段大小

TCP_MD5SIG

使用MD5摘要(RFC2385,Linux 2.6.20,glibc 2.7)

TCP_NODELAY

不要延迟发送来合并数据包

TCP_NOOPT

不要使用TCP选项

TCP_NOPUSH

不要推最后一块写

TCP_QUEUE_SEQ

修复模式的队列顺序(Linux 3.5,glibc 2.18)

TCP_QUICKACK

启用quickack模式(Linux 2.4.4,glibc 2.3)

TCP_REPAIR

修复模式(Linux 3.5,glibc 2.18)

TCP_REPAIR_OPTIONS

修复模式选项(Linux 3.5,glibc 2.18)

TCP_REPAIR_QUEUE

Queue for repair mode (Linux 3.5, glibc 2.18)

TCP_SYNCNT

连接丢失前的SYN重传次数(Linux 2.4,glibc 2.2)

TCP_THIN_DUPACK

针对少的流的重复确认处理(Linux 2.6.34,glibc 2.18)

TCP_THIN_LINEAR_TIMEOUTS

瘦流的线性超时(Linux 2.6.34,glibc 2.18)

TCP_TIMESTAMP

TCP时间戳(Linux 3.9,glibc 2.18)

TCP_USER_TIMEOUT

TCP连接中断前的最大超时(Linux 2.6.37,glibc 2.18)

TCP_WINDOW_CLAMP

限制广告窗口的大小(Linux 2.4,glibc 2.2)

UDP_CORK

不要发送部分帧(Linux 2.5.44,glibc 2.11)