NexusForce 1.0.0
A Modern C++ Library with extended functionality, web components, and utility libraries
载入中...
搜索中...
未找到
arp.hpp
浏览该文件的文档.
1#ifndef NEFORCE_NETWORK_UTIL_ARP_HPP__
2#define NEFORCE_NETWORK_UTIL_ARP_HPP__
3
11
14#ifdef NEFORCE_PLATFORM_LINUX
16#endif
17NEFORCE_BEGIN_NAMESPACE__
18
23
36class NEFORCE_API arp {
37private:
38 string iface_;
39
40#ifdef NEFORCE_PLATFORM_WINDOWS
41 bool opened_ = false;
42#else
43 socket_base sock_;
44 mac_address local_mac_;
45 uint32_t local_ip_;
46 int ifindex_ = -1;
47#endif
48
49#ifdef NEFORCE_PLATFORM_LINUX
50 bool local_info(const char* iface);
51#endif
52
53public:
57 arp() = default;
58
62 ~arp() = default;
63
71 bool open(const char* iface = nullptr);
72
76 void close() noexcept;
77
88};
89 // NetworkUtil
91
92NEFORCE_END_NAMESPACE__
93#endif // NEFORCE_NETWORK_UTIL_ARP_HPP__
~arp()=default
析构函数
arp()=default
默认构造函数
optional< mac_address > resolve(const ip_address &target, milliseconds timeout=milliseconds(1000))
解析IP地址对应的MAC地址
void close() noexcept
关闭ARP解析器
bool open(const char *iface=nullptr)
打开ARP解析器
IP地址封装类
MAC地址封装类
可选值类
Socket基础类
持续时间类型
unsigned int uint32_t
32位无符号整数类型
duration< int64_t, milli > milliseconds
毫秒持续时间
MAC地址封装类
Socket基础类实现