인터넷은 어떻게 작동하나요

인터넷은 어떻게 작동하나요

인터넷이 IP 주소와 어떻게 작동하는지 잘 모르겠습니다.
예를 들어, 우리 집에는 라우터가 있습니다. 이 라우터를 사용하면 LAN을 얻을 수 있습니다. 또한, 인터넷에 연결할 수도 있습니다. 내 질문은: 여기서 인터넷이 정확히 무엇인지입니다.
내 생각에는 내 라우터에 IP 주소를 배포하기 위해 인터넷 서비스를 제공하는 일부 회사에서 제공하는 또 다른 상위 수준 라우터가 있습니다. 더 높은 수준의 라우터의 관점에서 볼 때 내 라우터와 같은 모든 라우터는 더 큰 "LAN"을 형성합니다.
그렇다면 서버가 어떻게 작동하는지 모르겠습니다. 예를 들어, 우리는 IP 주소를 알고 있기 때문에 누구나 Google 서버에 로그인할 수 있습니다. 그런데 누가 이 IP 주소를 Google에 제공합니까? 라우터? 이 작업을 수행하는 라우터가 있다면 어떻게 인식할 수 있습니까?
예를 들어, A사의 라우터는 구글에 IP 주소를 주고, 저는 B사의 라우터를 이용하여 인터넷 서핑을 하고 있습니다. 이 경우에는 내 LAN과 Google의 LAN이라는 두 개의 LAN이 있는 것 같습니다. 두 개의 서로 다른 LAN에 있는 두 시스템이 어떻게 통신할 수 있습니까?

답변1

실제 사례를 통해 간단하게 만들어 보겠습니다.

(Everything in this example is based on IPv4)
  1. 집/사무실/회사 등 누구나 LAN을 구축할 수 있습니다. 해당 LAN은 네트워크에 정의된 개인 IP 주소를 사용해야 합니다.RFC1918. 이렇게 하면 세계 각지에서 동일한 IP 주소를 사용하여 발생할 수 있는 충돌을 방지할 수 있습니다.

  2. 귀하의 개인 LAN은공공의라우터를 통해 인터넷. 라우터에는 일반적으로사적인LAN에 연결된 IP와공공의에 연결된 IP로컬 ISP. 라우터는번역호출된 서비스NAT당신의사적인IP로 연결공공의인터넷.

  3. 로컬 ISP는 다음의 범위를 사용합니다.공공의다음과 같은 조직에서 할당한 IP 주소지역 인터넷 레지스트리.아린미국, 캐나다, 카리브해 지역의 여러 지역 및 남극 대륙의 경우.익은유럽, 러시아, 중동, 중앙아시아 등

  4. 그만큼로컬 ISP공용 IP 주소 범위를 사용하여 클라이언트의 라우터에 할당하고 다른 ISP(일반적으로 국제 ISP에 연결된 더 큰 ISP)에 대한 상호 연결을 위해 사용합니다. 다음에 의해 규제되는 상호 연결의 큰 메시(웹)가 있습니다.라우팅 프로토콜계산하는 것가장 빠른라우터와 다른 라우터 사이의 경로.

  5. 각 ISP에는 두 개 이상의 DNS 서버가 있어야 하며, 여기에 관계가 IP address - domain name저장되어 누구나 참조할 수 있습니다. 이 DNS 서버는 정보를 업데이트합니다.에서 까지다른 높은 계층 수준의 DNS 서버이므로 변경 사항이 전 세계 모든 DNS 서버에 복제될 수 있습니다.

  6. 언제LAN에서 연결하고 싶습니다http://www.google.com, PC/태블릿/휴대폰/이 DNS 서버에 해당 이름에 해당하는 IP 주소를 요청합니다(이 경우216.58.210.164). 그런 다음 웹 브라우저가 해당 IP 주소로 요청을 보내고 로컬 라우터가 해당 작업을 수행합니다.NAT번역 후 요청 패키지를 ISP 라우터로 보내고 더 높은 수준의 ISP 라우터로 보내는 식으로 패키지가 도착할 때까지 계속됩니다.Google가장 빠르거나 가장 짧은 경로를 통해(라우팅 프로토콜).

  7. Google은 페이지(HTML+CSS+이미지+쿠키)를 라우터로 전송하는 데 응답합니다(다시 패키지는 가장 빠른/최단 경로를 통과합니다). 라우터는 그 반대를 수행합니다.NAT번역하여 LAN에 올려 PC/태블릿/모바일로 가져옵니다.

분명히 기술적이고 더 복잡한 일이 많이 일어나고 있지만 이는 기본적인 설명으로 사용됩니다.

IP는 연결이 없는 프로토콜이므로Google에 대한 라우터경로가 다를 수 있습니다.Google에서 라우터로 연결, 그것은 의 결정에 달려있다.라우팅 프로토콜이것이 바로 IP/인터넷의 아름다움입니다. 파일 전송 도중 일부 중간 라우터에 장애가 발생하면 트래픽은 다른 라우터를 사용하여 다시 라우팅되며 최종 사용자는 이를 알아차리지 못합니다.

Windows를 사용하는 경우 다음을 엽니다.cmd그리고 글을 쓰면 ipconfig /all당신의 IP가 보일 것입니다.사적인라우터의 IP, 라우터의 IP 주소DNS 서버귀하가 사용하고 있는 정보 및 기타 정보.

또한 거기에서 작성 tracert www.google.com하면 PC에서 요청하는 패키지가 라우터에서 라우터로 이동하여 Google에 도달할 때까지 한 ISP에서 다른 ISP로 이동하는 방법을 확인할 수 있습니다.

전 세계적으로 인터넷상의 서버와 서비스가 크게 확장됨에 따라 IPv4 주소가 고갈되고 있습니다. ISP는 문제를 해결하고 IPv6의 필요성을 없애기 때문에 IPv6를 구현해야 합니다.NAT변환하여 LAN 사용을 가능하게 합니다.공개 주소.

답변2

두 개의 서로 다른 LAN에 있는 두 시스템이 어떻게 통신할 수 있습니까?

IMHO, 예외 사항을 먼저 잊어버리면 일반 규칙을 이해하는 것이 더 쉬울 것입니다.

먼저, 홈 라우터에서 생성된 것과 같은 수백 개의 폐쇄형 LAN이 일종의보적, IPv4 주소 부족으로 인해 널리 보급되었습니다.

홈 라우터를 넘어서는 더 높은 수준에서는 "LAN"과 "WAN"을 엄격하게 구분하지 않습니다. 대신, 인터넷을 전화나 우편 네트워크와 같은 단일 글로벌 네트워크로 생각하십시오. ISP에는 여러 "계층"이 있지만 충분히 높은 계층 구조를 따르면 찾을 수 없습니다.단일 중앙 허브ISP를 스포크로 사용합니다. 대신, 당신은망사아래 그래프와 같이 상호 연결된 네트워크의 모습입니다.

귀하의 ISP가 충분히 크면 상위 계층 네트워크에 대한 여러 링크가 있을 뿐만 아니라 동일한 지역의 다른 ISP에 대한 직접 경로가 있을 수 있습니다. 그들은 모두BGP 프로토콜어떤 ISP를 통해 연결할 수 있는지에 대한 정보를 교환합니다. 따라서 어떤 이유로 인해 짧은 경로가 끊어지면 모든 것이 더 긴 경로를 통과하게 됩니다.(지금 내 ISP와 Wikipedia 사이에 이런 일이 일어나고 있는 것 같습니다. Grmh.)

실제로 Google이나 Netflix와 같은 일부 기업은 계층 1 네트워크에 대한 여러 링크를 보유할 만큼 규모가 크며, 이는 나머지 계층 구조를 거의 없애줍니다.


그런데 누가 이 IP 주소를 Google에 제공합니까?

IP 주소 자체~이다다음으로 시작하여 계층 구조로 할당됨IANA큰 주소 범위 할당지역 레지스트리, 그리고 해당 레지스트리는 ISP 및 기타 기업에 더 작은 범위를 제공합니다.

그러나 이러한 임무는 단지허가주소를 사용하기 위해 그들은 가지고 있다아니요실제 라우터 구성 방법과 관련이 있습니다. 대신, 각 네트워크의 운영자는 자신이 소유한 주소 범위를 사용하도록 자체 라우터를 직접 구성합니다.

(보통 서버는그들 자신안정성을 위해 각 서버에 주소를 수동으로 설정합니다. 그러나 필수는 아닙니다. 개인용 컴퓨터와 마찬가지로 서버가 DHCP를 사용하여 라우터에서 주소를 얻는 곳을 본 적이 있습니다.)

즉, IANA는 Google에 해당 주소 사용 권한을 부여하고 전 세계의 다른 ISP는 해당 주소가 Google 네트워크로 라우팅되도록 합니다. 나머지는 Google의 네트워크 운영자에게 달려 있습니다.


따라서 위의 내용을 고려하면 홈 라우터와 Google의 웹 서버는 거의인터넷의 동등한 구성원. 각각은 라우팅 테이블을 따라 네트워크의 다른 위치에서 연결할 수 있는 글로벌 IP 주소를 가지고 있습니다.

  • 귀하의 컴퓨터에는 "기본 게이트웨이"(라우터)를 통해 동일한 서브넷 외부에 있는 모든 항목에 연결할 수 있다는 매우 간단한 라우팅 테이블이 있습니다.

  • 마찬가지로 홈 라우터에서는 "LAN" IP 주소가 LAN 포트에서 직접 연결할 수 있으며 다른 모든 항목은 ISP의 라우터로 전송되어야 한다고 말합니다.

  • 여기 직장에서는 건물마다 하나씩 총 5개의 라우터가 있게 되었습니다. 따라서 라우팅 테이블에는 기본 "동일한 서브넷" 및 "다른 모든 것" 외에도 다른 모든 건물의 라우터에 대한 직접 경로가 있습니다.

  • ISP에는 여러 개의 라우터가 있으며 그 중 일부는 고객을 향한 경로가 있고 일부는 다른 ISP에 대한 링크를 알고 있습니다. 예를 들어 "외부" 라우터에는 다음과 같은 정보가 있을 수 있습니다.

    • 36.56.xx는 ISP의 자체 "고객" 라우터를 통해 접근할 수 있습니다.
    • 212.xxx는 NORDUnet의 109.105.98.126 라우터를 통해 연결할 수 있습니다.
    • 212.162.xx 가능또한GÉANT의 62.40.98.13 라우터를 통해 연결됩니다.
    • (등등)
    • 마침내 Level3를 통해 모든 것에 도달할 수 있게 되었습니다.

    그리고 "고객" 라우터는 다음과 같이 말할 수 있습니다.

    • 36.56.1.1은 포트 #3을 통해 접근할 수 있습니다.
    • 36.56.1.2는 포트 #4를 통해 접근할 수 있습니다.
    • (등등)

컴퓨터가 Google 방향으로 또는 그 반대 방향으로 패킷을 보낼 때마다 각 라우터는 도달할 수 있는 대상을 확인하고 패킷을 다음 방향으로 전달합니다. 터미널에서 TRACERT또는 명령을 사용하여 전체 경로를 볼 수도 있습니다 .traceroute


이것이 기본입니다.

예, 홈 라우터에는 전체 홈 네트워크가 하나의 IP 주소 뒤에 숨길 수 있도록 추가 트릭(네트워크 주소 변환, NAT)이 필요합니다. 이것은상당히널리 퍼져 있음: MIT와 같은 노인들만이 모든 사람에게 IPv4 주소를 제공할 만큼 충분한 IPv4 주소를 가지고 있습니다. 거의 모든 다른 네트워크는 NAT로 해결해야 합니다. (내 직장은 64개의 주소 블록을 소유하고 있지만 워크스테이션은 수백 개에 이릅니다.그리고학생들은 휴대폰에서 Wi-Fi를 사용하므로 대부분 NAT 뒤에 있습니다.)

그러나 그것이 얼마나 널리 퍼져 있는지에 관계없이 NAT는 여전히 예외이며, 오래된 기능을 계속 작동시키기 위한 해킹입니다(2100년대에 IPv6가 더 널리 보급될 때까지). 대부분의 서버에는 자체 글로벌 IP 주소가 있으며 직접 연결할 수 있습니다. Google 네트워크 내에서 도달하는 데 어떤 마법도 필요하지 않습니다.

실제로 누군가에게 연결해야 한다면~이다NAT 뒤에서는 정말 짜증날 수 있습니다. 많은 게임에서 이러한 이유로 "포트 전달"을 구성하도록 요청하고 P2P 프로그램은 LAN 내부에 도달하기 위해 다양한 "홀 펀칭" 트릭에 의존해야 합니다. NAT.

그리고 ISP가 "캐리어급 NAT"를 사용하기 시작하면서 상황은 더욱 악화될 것입니다.


또한 대규모 ISP는 때때로 경로 기반 전달이 가능해지면 정책 라우팅이나 MPLS와 같은 더 복잡한 내부 기능을 갖습니다.~도느리지만 기본 IP 위에 추가된 것이므로 별도로 조사해야 합니다. 실제로는 그렇지 않습니다.일했다ISP에서.

관련 정보