我想在 IP 数据包上设置 Don't Fragment 标志。setsockopt()
有没有办法通过函数或函数的标志来做到这一点sendto()
?
我可以使用“普通”套接字执行此操作,还是必须使用原始套接字并自己构建整个 IP 标头,将其偏移字段设置为IP_DF
(在 ip.h 中定义)?
我想在 IP 数据包上设置 Don't Fragment 标志。setsockopt()
有没有办法通过函数或函数的标志来做到这一点sendto()
?
我可以使用“普通”套接字执行此操作,还是必须使用原始套接字并自己构建整个 IP 标头,将其偏移字段设置为IP_DF
(在 ip.h 中定义)?
看着/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers
我确实发现了一些常数:
netinet/ip.h
99:#define IP_DF 0x4000 /* dont fragment flag */
netinet6/in6.h
547:#define IPV6_DONTFRAG 62 /* bool; disable IPv6 fragmentation */