맨위로가기

0.0.0.0

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

0.0.0.0은 IANA가 정의한 IPv4 주소로, "이 네트워크의 이 호스트"를 의미한다. RFC 1122에 의해 특정 상황에서만 출발지 주소로 사용이 허용되며, 주소를 할당받지 못한 호스트가 DHCPDISCOVER 패킷을 보낼 때 사용될 수 있다. 운영체제에 따라 특별한 내부적 의미를 가지며, 서버 설정 시 "임의의 IPv4 주소"를 나타내거나, 라우팅에서 기본 경로를 지정하는 데 사용되기도 한다. CIDR 표기법에서 0.0.0.0/0은 모든 IP 주소를 포함하는 IP 블록을 정의하며, IPv6에서는 ::로 표현된다. 2024년 8월, 0.0.0.0 주소로 악성 요청을 보내는 보안 결함이 발견되어 주의가 요구된다.

2. 공식 표준 의미와 용도

IANARFC 1122 섹션 3.2.1.3에 따라 단일 IP 주소 '''0.0.0.0'''[1]을 "이 네트워크의 이 호스트"로 정의한다.

0.0.0.0은 다음과 같은 용도로 사용된다.


  • "임의의 IPv4 주소"를 의미하며, 서버를 설정할 때 사용된다. C 언어에서는 `INADDR_ANY`로 매크로 정의되어 있다.
  • 대상이 이용 불가능함을 명시적으로 지정한다.[13]
  • 서버에서 0.0.0.0은 "로컬 머신상의 모든 IPv4 주소"를 의미한다. 예를 들어 호스트에 두 개의 IP 주소(192.168.1.1, 10.1.2.1)가 있고, 서버가 0.0.0.0으로 대기하도록 구성된 경우, 두 IP 주소 모두에서 도달 가능하다.

2. 1. RFC 1122 규정

RFC 1122는 {0,0} 표기법으로 '''0.0.0.0'''을 언급하며,[15] IPv4에서 목적지 주소로 사용하는 것을 금지하고, 특정 상황에서만 출발지 주소로 사용하도록 허용한다.

호스트는 주소를 아직 할당받지 못한 경우 (예: DHCP를 사용하여 초기 DHCPDISCOVER 패킷을 보낼 때) 자신의 출발지 주소로 '''0.0.0.0'''을 사용할 수 있다.

3. 운영체제별 용도

일부 운영 체제는 0.0.0.0 주소에 특별한 내부적 의미를 부여하는데, 운영 체제마다 그 의미가 통일되어 있지는 않다.[16]

0.0.0.0은 서버에서 "로컬 머신상의 모든 IPv4 주소"를 의미하기도 한다. 예를 들어 어떤 호스트에 192.168.1.1과 10.1.2.1 두 개의 IP 주소가 있을 때, 이 호스트에서 실행 중인 서버가 0.0.0.0으로 대기하도록 설정되면, 두 IP 주소 모두에서 해당 서버에 접근할 수 있다.

3. 1. 윈도우와 리눅스

윈도우와 리눅스에서 프로그램은 INADDR_ANY (0.0.0.0)를 지정하여 호스트의 IP 주소를 선택할 수 있다.[17][18] 리눅스에서는 프로그램이 현재 호스트(localhost)에 연결하기 위한 원격 주소로 0.0.0.0을 지정할 수 있다.[2]

3. 2. 기타 비표준 용도

운영 체제 내부 사용 외에도, 이 주소는 다음과 같은 용도로 사용된다.[5][6]

  • 유효하지 않거나, 알 수 없거나, 적용할 수 없는 대상을 지정하는 데 사용되는 라우팅 불가능한 메타 주소이다.
  • DHCP를 통한 주소 요청이 실패했을 때, 호스트의 IP 스택이 이를 지원하는 경우 호스트가 자체적으로 할당하는 주소이다. 이 용도는 최신 운영 체제에서 APIPA 메커니즘으로 대체되었다.
  • 대상이 사용 불가능함을 명시적으로 지정하는 방법이다.[7]
  • 원래 대상 대신 존재하지 않는 대상으로 요청을 라우팅하는 방법. 광고 차단 목적으로 자주 사용되며, OS별 동작과 충돌할 수 있다.[8]


0.0.0.0은 호스트 주소로 다음과 같이 사용된다.

  • "임의의 IPv4 주소"를 의미하며, 서버를 설정할 때(즉, listen하는 소켓을 바인딩할 때) 사용된다.
  • 호스트에 아직 주소가 할당되지 않았을 때, 호스트가 자신을 가리키는 데 사용하는 주소이다. DHCP에서 최초의 ''DHCPDISCOVER'' 패킷을 전송할 때 등에 사용된다.
  • DHCP에 의한 주소 취득에 실패했을 때, 호스트가 자신에게 할당하는 주소이다(호스트의 IP 스택이 대응하는 경우). 최근의 운영 체제에서는 APIPA 메커니즘으로 대체되고 있다.
  • 대상이 이용 불가능함을 명시적으로 지정한다.[13]


서버에서 0.0.0.0은 "로컬 머신상의 모든 IPv4 주소"를 의미한다. 호스트에 192.168.1.1과 10.1.2.1의 두 개의 IP 주소가 있고, 그 호스트에서 실행되고 있는 서버가 0.0.0.0으로 대기하도록 구성되어 있는 경우, 어느 IP 주소에 대해서도 도달 가능하게 된다.

4. 라우팅에서의 용도

라우팅 테이블에서 0.0.0.0은 게이트웨이가 지정되지 않았음을 나타낼 수 있다. 이는 일반적으로 시스템이 목적지에 직접 연결되어 중간 라우팅 홉이 필요하지 않음을 의미한다.[9]

4. 1. 기본 경로

CIDR 표기법에서 0.0.0.0/0은 가능한 모든 IP 주소를 포함하는 IP 블록을 정의하며, 라우팅에서 기본 경로를 나타내는 데 사용된다.[10] 이는 IPv4 주소 공간의 모든 주소와 일치하며, 대부분의 호스트에서 로컬 라우터로 향한다.[10]

라우팅에서 0.0.0.0은 서브넷 마스크가 0인 기본 경로네트워크 주소로 사용되며, "0.0.0.0/0" 또는 "0.0.0.0 0.0.0.0"으로 표현된다.

5. IPv6에서의 사용

IPv6에서 모든 값이 0인 주소는 보통 ::(두 개의 콜론)으로 표현되며, 이는 '''0000:0000:0000:0000:0000:0000:0000:0000'''의 축약 표기이다.[19][11] IPv6에서도 IPv4의 '''0.0.0.0'''과 동일한 목적의 역할을 한다.[19]

6. 0.0.0.0 데이 익스플로잇

2024년 8월, 이스라엘 사이버 보안 회사 올리고(Oligo)의 연구원들은 표적의 0.0.0.0 주소로 악성 요청을 보내 개발자 코드나 내부 메시지와 같은 개인 리소스에 접근할 수 있게 하는 보안 결함을 발견했다고 발표했다.[12]

참조

[1] 웹사이트 IANA IPv4 Special-Purpose Address Registry https://www.iana.org[...] 2023-06-07
[2] 웹사이트 Connecting to IP 0.0.0.0 succeeds. How? Why? https://unix.stackex[...] 2023-06-07
[3] 웹사이트 ip(7) — Linux manual page https://man7.org/lin[...] 2023-06-07
[4] 웹사이트 bind function (winsock.h) - Win32 apps https://learn.micros[...] 2023-06-07
[5] 웹사이트 What's the difference between 127.0.0.1 and 0.0.0.0? https://superuser.co[...] 2023-06-07
[6] 웹사이트 What It Means When You See the 0.0.0.0 IP Address https://www.lifewire[...] 2023-06-07
[7] 간행물
[8] 웹사이트 Why accessing 0.0.0.0:443 gets redirected to 127.0.0.1:443 on Linux and how to disallow it? https://unix.stackex[...] 2023-06-07
[9] 웹사이트 Unix: Getting from here to there (routing basics) https://www.networkw[...] 2023-06-07
[10] 서적 Metabase Up and Running Introduce Business Intelligence and Analytics to Your Company and Make Better Business Decisions
[11] 웹사이트 IPv6 Addressing http://ipv6.com/arti[...] 2023-06-07
[12] 뉴스 Hackers Have Exploited An 18-Year-Old ‘0.0.0.0-Day’ Loophole In Safari, Chrome And Firefox https://www.forbes.c[...] Forbes 2024-08-08
[13] 웹사이트 Cable Device Management Information Base for Data-Over-Cable Service Interface Specification (DOCSIS) Compliant Cable Modems and Cable Modem Termination Systems https://datatracker.[...] 2019-03-06
[14] 웹사이트 IPv6 Addressing http://ipv6.com/arti[...] 2015-06-18
[15] 웹인용 IANA IPv4 Special-Purpose Address Registry https://www.iana.org[...]
[16] 웹인용 Connecting to IP 0.0.0.0 succeeds. How? Why? https://unix.stackex[...] 2022-11-19
[17] 웹인용 ip(7) https://man7.org/lin[...] 2021-03-22
[18] 웹인용 bind function (winsock.h) - Win32 apps https://learn.micros[...] 2022-08-19
[19] 웹인용 IPv6.com - IPv6 Addressing http://ipv6.com/arti[...]



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com