Linux/Linux명령어
[Linux] inet_ntop() - IPv6 or IPv4 주소를 문자열로 변환해라 (network(binary) to pointer) (inet_ntop/inet-pton)
2022. 6. 15. 19:48반응형
inet_ntop() 함수는
바이너리 형태의 IPv6 또는 IPv4 주소 네트워크정보(빅엔디안)를, 문자열(리틀엔디언)로 변환해주는 함수이다.
(from network(binary) to pointer)
inet_pton() 함수는
문자열(리틀엔디언)을 바이너리 형태의 IPv6 또는 IPv4 주소 네트워크정보(빅엔디안)로 변환해 주는 함수이다.
(from pointer to network(binary)
예제
inet_ntop()
inet_pton()
#include <stdio.h>
#include <sys/socket.h>
#include <cstdlib>
#include <arpa/inet.h>
#include <netinet/in.h>
int main()
{
in_addr addr;
sockaddr_in addr_in;
char buf[32] = {0,};
char buf2[32] = {0,};
inet_pton(AF_INET,"192.168.0.1",&addr.s_addr);
inet_pton(AF_INET,"192.168.0.1",&addr_in.sin_addr);
inet_ntop(AF_INET,&addr.s_addr,buf,sizeof(buf));
inet_ntop(AF_INET,&addr_in.sin_addr,buf2,sizeof(buf2));
printf("%s\n",buf);
printf("%s\n",buf2);
return 0;
}
시놉시스
const char *inet_ntop(int af, const void *restrict src,
char *restrict dst, socklen_t size);
af : address family
src : 네트워크 주소 구조체(network address structure)
dst : 결과 문자열이 복사되어질 버퍼를 가리키는 주소 (The resulting string is copied to the buffer pointed to by dst)
size : 버퍼의 사용 가능한 사이즈 (Caller는 이 버퍼의 가용한 사이즈를 명시해야함)
참고자료
https://man7.org/linux/man-pages/man3/inet_ntop.3.html
반응형
'Linux > Linux명령어' 카테고리의 다른 글
[Linux] tcpdump 명령어 (0) | 2022.03.11 |
---|---|
[Linux] nslookup 사용해서 서버 아이피 주소 알아내기 (0) | 2022.03.09 |
[Linux] 디스크 관련 명령어 df, du (0) | 2022.03.09 |
[Linux] awk 명령어 (0) | 2022.03.09 |
[Linux] find 명령어 (0) | 2021.07.04 |