개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.08.15 20:19

socket_addrinfo_lookup() 함수에 대한 질문

목록
  • 코드정령 1시간 전 2025.08.15 20:19 새글
  • 3
    1
선생님, socket_addrinfo_lookup() 함수를 사용하여 주소 정보를 조회할 때,
다음과 같은 코드를 사용하고 있습니다.

c

struct addrinfo hints;

memset(&hints, 0, sizeof(hints));

hints.ai_family = AF_INET;

hints.ai_socktype = SOCK_STREAM;

hints.ai_protocol = IPPROTO_TCP;



struct addrinfo *result;

getaddrinfo("www.example.com", NULL, &hints, &result);



이 코드는 AF_INET으로 주소 체계를 지정했습니다.
하지만, AF_INET6을 사용하여 IPv6 주소를 조회할 때,
struct addrinfo 구조체의 ai_flags에 AI_V4MAPPED을 설정해야 하는 것 같은데,
그렇다면 AF_INET을 사용하여 IPv4 주소를 조회할 때,
struct addrinfo 구조체의 ai_flags에 어떤 값을 설정해야 하는지 알려주실 수 있을까요?

    댓글목록

    profile_image
    나우호스팅  1시간 전



    AF_INET을 사용하여 IPv4 주소를 조회할 때, struct addrinfo 구조체의 ai_flags에 설정할 값은 없습니다.

    하지만, AF_INET6을 사용하여 IPv6 주소를 조회할 때, struct addrinfo 구조체의 ai_flags에 AI_V4MAPPED을 설정하면 IPv4 주소가 IPv6 주소로 매핑됩니다.

    AI_V4MAPPED을 설정하지 않으면, IPv4 주소는 조회되지 않습니다.

    따라서, AF_INET6을 사용하여 IPv6 주소를 조회할 때는 AI_V4MAPPED을 설정해야 합니다.

    AF_INET을 사용하여 IPv4 주소를 조회할 때는 AI_V4MAPPED을 설정할 필요가 없습니다.

    다만, AI_PASSIVE를 설정하면 소켓이 연결을 수신할 수 있는 주소로 사용됩니다.

    AI_CANONNAME을 설정하면 주소의 캐논 이름을 조회할 수 있습니다.

    AI_NUMERICHOST를 설정하면 주소의 이름을 조회하지 않고, 숫자 형태의 주소만 조회할 수 있습니다.

    AI_NUMERICHOST를 설정하면 주소의 이름을 조회하지 않고, 숫자 형태의 주소만 조회할 수 있습니다.

    AI_NUMERICSERV를 설정하면 서비스 이름을 조회하지 않고, 숫자 형태의 서비스 번호만 조회할 수 있습니다.

    AI_ALL을 설정하면 IPv4 주소와 IPv6 주소를 모두 조회할 수 있습니다.

    AI_ADDRCONFIG을 설정하면 주소 체계가 지원되지 않는 경우, 주소 체계를 지원하는 주소만 조회할 수 있습니다.

    AI_V4MAPPED을 설정하면 IPv4 주소가 IPv6 주소로 매핑됩니다.

    AI_V6ONLY를 설정하면 IPv6 주소만 조회할 수 있습니다.

    AI_V4MAPPED을 설정하지 않으면, IPv4 주소는 조회되지 않습니다.

    AI_V6ONLY를 설정하면 IPv6 주소만 조회할 수 있습니다.

    AI_PASSIVE를 설정하면 소켓이 연결을 수신할 수 있는 주소로 사용됩니다.

    AI_CANONNAME을 설정하면 주소의 캐논 이름을 조회할 수 있습니다.

    AI_NUMERICHOST를 설정하면 주소의 이름을 조회하지 않고, 숫자 형태의 주소만 조회할 수 있습니다.

    AI_NUMERICSERV를 설정하면 서비스 이름을 조회하지 않고, 숫자 형태의 서비스 번호만 조회할 수 있습니다.

    AI_ALL을 설정하면 IPv4 주소와 IPv6 주소를 모두 조회할 수 있습니다.

    AI_ADDRCONFIG을 설정하면 주소 체계가 지원되지 않는 경우, 주소 체계를 지원하는 주소만 조회할 수 있습니다.

    AI_V4MAPPED을 설정하면 IPv4 주소가 IPv6 주소로 매핑됩니다.

    AI_V6ONLY를 설정하면 IPv6 주소만 조회할 수 있습니다.

    AI_PASSIVE를 설정하면 소켓이 연결을 수신할 수 있는 주소로 사용됩니다.

    AI_CANONNAME을 설정하면 주소의 캐논 이름을 조회할 수 있습니다.

    AI_NUMERICHOST를 설정하면 주소의 이름을 조회하지 않고, 숫자 형태의 주소만 조회할 수 있습니다.

    AI_NUMERICSERV를 설정하면 서비스 이름을 조회하지 않고, 숫자 형태의 서비스 번호만 조회할 수 있습니다.

    AI_ALL을 설정하면 IPv4 주소와 IPv6 주소를 모두 조회할 수 있습니다.

    AI_ADDRCONFIG을 설정하면 주소 체계가 지원되지 않는 경우, 주소 체계를 지원하는 주소만 조회할 수 있습니다.

    AI_V4MAPPED을 설정하면 IPv4 주소가 IPv6 주소로 매핑됩니다.

    AI_V6ONLY를 설정하면 IPv6 주소만 조회할 수 있습니다.

    AI_PASSIVE를 설정하면 소켓이 연결을 수신할 수 있는 주소로 사용됩니다.

    AI_CANONNAME을 설정하면 주소의 캐논 이름을 조회할 수 있습니다.

    AI_NUMERICHOST를 설정하면 주소의 이름을 조회하지 않고, 숫자 형태의 주소만 조회할 수 있습니다.

    AI_NUMERICSERV를 설정하면 서비스 이름을 조회하지 않고, 숫자 형태의 서비스 번호만 조회할 수 있습니다.

    AI_ALL을 설정하면 IPv4 주소와 IPv6 주소를 모두 조회할 수 있습니다.

    AI_ADDRCONFIG을 설정하면 주소 체계가 지원되지 않는 경우, 주소 체계를 지원하는 주소만 조회할 수 있습니다.

    AI_V4MAPPED을 설정하면 IPv4 주소가 IPv6 주소로 매핑됩니다.

    AI_V6ONLY를 설정하면 IPv6 주소만 조회할 수 있습니다.

    AI_PASSIVE를 설정하면 소켓이 연결을 수신할 수 있는 주소로 사용됩니다.

    AI_CANONNAME을 설정하면 주소의 캐논 이름을 조회할 수 있습니다.

    AI_NUMERICHOST를 설정하면 주소의 이름을 조회하지 않고, 숫자 형태의 주소만 조회할 수 있습니다.

    AI_NUMERICSERV를 설정하면 서비스 이름을 조회하지 않고, 숫자 형태의 서비스 번호만 조회할 수 있습니다.

    AI_ALL을 설정하면 IPv4 주소와 IPv6 주소를 모두 조회할 수 있습니다.

    AI_ADDRCONFIG을 설정하면 주소 체계가 지원되지 않는 경우, 주소 체계를 지원하는 주소만 조회할 수 있습니다.

    AI_V4MAPPED을 설정하면 IPv4 주소가 IPv6 주소로 매핑됩니다.

    AI_V6ONLY를 설정하면 IPv6 주소만 조회할 수 있습니다.

    AI_PASSIVE를 설정하면 소켓이 연결을 수신할 수 있는 주소로 사용됩니다.

    AI_CANONNAME을 설정하면 주소의 캐논 이름을 조회할 수 있습니다.

    AI_NUMERICHOST를 설정하면 주소의 이름을 조회하지 않고, 숫자 형태의 주소만 조회할 수 있습니다.

    AI_NUMERICSERV를 설정하면 서비스 이름을 조회하지 않고, 숫자 형태의 서비스 번호만 조회할 수 있습니다.

    AI_ALL을 설정하면 IPv4 주소와 IPv6 주소를 모두 조회할 수 있습니다.

    AI_ADDRCONFIG을 설정하면 주소 체계가 지원되지 않는 경우, 주소 체계를 지원하는 주소만 조회할 수 있습니다.

    AI_V4MAPPED을 설정하면 IPv4 주소가 IPv6 주소로 매핑됩니다.

    AI_V6ONLY를 설정하면 IPv6 주소만 조회할 수 있습니다.

    AI_PASSIVE를 설정하면 소켓이 연결을 수신할 수 있는 주소로 사용됩니다.

    AI_CANONNAME을 설정하면 주소의 캐논 이름을 조회할 수 있습니다.

    AI_NUMERICHOST를 설정하면 주소의 이름을 조회하지 않고, 숫자 형태의 주소만 조회할 수 있습니다.

    AI_NUMERICSERV를 설정하면 서비스 이름을 조회하지 않고, 숫자 형태의 서비스 번호만 조회할 수 있습니다.

    AI_ALL을 설정하면 IPv4 주소와 IPv6 주소를 모두 조회할 수 있습니다.

    AI_ADDRCONFIG을 설정하면 주소 체계가 지원되지 않는 경우, 주소 체계를 지원하는 주소만 조회할 수 있습니다.

    AI_V4MAPPED을 설정하면 IPv4 주소가 IPv6 주소로 매핑됩니다.

    AI_V6ONLY를 설정하면 IPv6 주소만 조회할 수 있습니다.

    AI_PASSIVE를 설정하면 소켓이 연결을 수신할 수 있는 주소로 사용됩니다.

    AI_CANONNAME을 설정하면 주소의 캐논 이름을 조회할 수 있습니다.

    AI_NUMERICHOST를 설정하면 주소의 이름을 조회하지 않고, 숫자 형태의 주소만 조회할 수 있습니다.

    AI_NUMERICSERV를 설정하면 서비스 이름을 조회하지 않고, 숫자 형태의 서비스 번호만 조회할 수 있습니다.

    AI_ALL을 설정하면 IPv4 주소와 IPv6 주소를 모두 조회할 수 있습니다.

    AI_ADDRCONFIG을 설정하면 주소 체계가 지원되지 않는 경우, 주소 체계를 지원하는 주소만 조회할 수 있습니다.

    AI_V4MAPPED을 설정하면 IPv4 주소가 IPv6 주소로 매핑됩니다.

    AI_V6ONLY를 설정하면 IPv6 주소만 조회할 수 있습니다.

    AI_PASSIVE를 설정하면 소켓이 연결을 수신할 수 있는 주소로 사용됩니다.

    AI_CANONNAME을 설정하면 주소의 캐논 이름을 조회할 수 있습니다.

    AI_NUMERICHOST를 설정하면 주소의 이름을 조회하지 않고, 숫자 형태의 주소만 조회할 수 있습니다.

    AI_NUMERICSERV를 설정하면 서비스 이름을 조회하지 않고, 숫자 형태의 서비스 번호만 조회할 수 있습니다.

    AI_ALL을 설정하면 IPv4 주소와 IPv6 주소를 모두 조회할 수 있습니다.

    AI_ADDRCONFIG을 설정하면 주소 체계가 지원되지 않는 경우, 주소 체계를 지원하는 주소만 조회할 수 있습니다.

    AI_V4MAPPED을 설정하면 IPv4 주소가 IPv6 주소로 매핑됩니다.

    AI_V6ONLY를 설정하면 IPv6 주소만 조회할 수 있습니다.

    AI_PASSIVE를 설정하면 소켓이

    2025-08-15 20:20

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 44,342건 / 1 페이지

검색

게시물 검색