UDP 서버-클라이언트(IPv6)

bolee·2022년 4월 25일
0

여기에서는 IPv6를 지원하는 UDP 서버-클라이언트를 작성한 결과이다.

기존 IPv4 코드를 IPv6 코드로 변환하는 규칙을 다시 소개하면 다음과 같다.

  • ws2tcpip.h 헤더 파일을 포함한다.
  • 소켓 생성 시 AF_INET 대신 AF_INET6 를 사용한다.
  • 소켓 주소 구조체로 SOCKADDR_IN 대신 SOCKADDR_IN6를 사용한다.
    • 구조체를 변경하면 필드명도 그에 따라 바꿔야 한다.
    • 서버에서 주로 사용하는 INADDR_ANY(0으로 정의됨) 값은 in6addr_any(역시 0으로 정의됨; 소문자 임에 주의)로 변경한다.
  • IPv4 만을 지원하는 주소 변환 함수를 IPv4/IPv6 지원 함수로 대체한다.
  • 데이터 전송 함수는 기존의 sendto()/recvfrom() 함수를 변경 없이 그대로 사용한다.

IPv6를 지원하는 UDP 서버-클라이언트는 아래와 같다.

https://github.com/LEEBONGHAK/TCP-IP_window_socket/tree/main/Chapter07/UDPIPv6

참고 자료
김성우 저, "TCP/IP 윈도우 소켓 프로그래밍", 한빛아카데미, 2018

0개의 댓글