인터넷에 뭐가 있어요?
인터넷의 개념
현실 세계에서 컴퓨터 네트워크는 일반적으로 여러 가지 유형의 네트워크에 의해 상호 연결됩니다. 만약 몇 개의 컴퓨터 네트워크가 물리적인 연결일 뿐이지만 서로 통신할 수 없다면, 이' 상호 연결' 은 실제적인 의미가 없다. 그래서 우리가 흔히 말하는' 상호 연결' 은 상호 연결된 컴퓨터가 통신할 수 있다는 것을 암시했습니다. 즉, 기능과 논리의 관점에서 볼 때, 이러한 컴퓨터 네트워크는 이미 대형 컴퓨터 네트워크를 형성하거나, 인터넷 네트워크라고 부르거나, 간단히 인터넷이라고 할 수 있습니다.
여기서 문자 I 는 소문자이므로 인터넷은 여러 컴퓨터 네트워크 상호 연결로 구성된 컴퓨터 네트워크를 의미합니다. 대문자가 있는 인터넷은 세계에서 가장 크고 개방적인 컴퓨터 네트워크를 가리키며, 많은 네트워크로 연결되어 있다. TCP/IP 프로토콜 제품군 (이전의 미국 ARPANET) 을 사용합니다.
서로 통신하기 위해 인터넷 네트워크에는 서로 다른 주소 지정 체계와 같이 해결해야 할 많은 문제가 발생할 수 있습니다. 최대 그룹화 길이가 다릅니다. 다른 네트워크 액세스 메커니즘 다른 시간 초과 제어 다른 오류 복구 방법 다른 상태 보고 방법 다른 라우팅 기술 다른 사용자의 액세스 제어 다른 서비스 (연결 지향 서비스 및 연결되지 않은 서비스); 다양한 관리 및 제어 방법 잠깐만요.
일부 중간 장치 (또는 중간 시스템) 는 ISO 용어로 릴레이 시스템이라고 하는 네트워크를 서로 연결하는 데 사용됩니다. 릴레이 시스템의 수준에 따라 다음과 같은 5 가지 릴레이 시스템이 있을 수 있습니다.
(1) 물리적 계층 릴레이 시스템, 즉 리피터.
(2) 데이터 링크 계층 릴레이 시스템, 즉 브리지 또는 브리지.
(3) 네트워크 계층 릴레이 시스템, 즉 라우터.
(4) 브리지와 라우터의 혼합 라우터. 브리지 디바이스는 브리지와 라우터의 기능을 모두 갖춘 제품입니다. 사실, 엄격한 브리지나 엄격한 라우터 제품은 드물다. 그러나이 용어는 일반적으로 사용되지 않습니다.
(5) 네트워크 계층 이상의 트렁킹 시스템을 게이트웨이라고 합니다. 게이트웨이는 게이트웨이, 게이트웨이 또는 네트워킹기라고도 합니다. 게이트웨이로 호환되지 않는 두 시스템을 연결하려면 높은 수준의 프로토콜 변환이 필요합니다.
중계 시스템이 중계기 또는 브리지인 경우 일반적으로 네트워크 간 상호 연결이라고 하지 않습니다. 왜냐하면 하나의 네트워크만 확장되었기 때문입니다. 그것은 여전히 네트워크이기 때문입니다. (데이비드 아셀, Northern Exposure (미국 TV 드라마), 네트워크명언) 게이트웨이의 복잡성으로 인해 현재는 거의 사용되지 않습니다. 그래서 우리가 일반적으로 인터넷에 대해 이야기할 때, 항상 라우터가 있는 인터넷을 가리킨다. 라우터는 실제로 인터넷을 통해 라우팅하는 데 사용되는 전용 컴퓨터입니다. 역사적으로 TCP/IP 에 관한 많은 문헌에서는 네트워크 계층에서 사용하는 라우터를 게이트웨이라고 합니다. 이 점에 유의하세요.
게이트웨이 인터넷을 사용하는 것이 복잡한 이유는 무엇입니까? N 개의 네트워크가 서로 연결되어 있다고 상상할 수 있습니다. 두 네트워크 사이에 프로토콜 변환기가 필요합니다. N 개의 네트워크 * * * 에는 N(N- 1) 개의 프로토콜 변환기가 필요합니다. (두 네트워크 모두 게이트웨이를 통과하는 것을 고려해 보십시오.) 따라서 많은 수의 프로토콜 변환기를 설계해야 합니다.
인터넷은 표준화된 방법을 채택하고 있다. 그림 6. 1(a) 는 많은 컴퓨터 네트워크가 일부 라우터를 통해 서로 연결되어 있음을 보여줍니다. 상호 연결에 참여하는 모든 컴퓨터 네트워크는 동일한 인터넷 프로토콜 IP 를 사용하기 때문에 상호 연결된 컴퓨터 네트워크는 그림 6. 1(b) 에 표시된 가상 네트워크, 즉 일반적으로 인터넷 또는 IP 네트워크로 볼 수 있습니다. 인터넷상의 많은 호스트가 통신할 때, 하나의 네트워크에서 통신하는 것처럼, 그들은 인터넷 네트워크의 세부 사항을 볼 수 없다. 이것은 더 높은 수준의 게이트웨이를 사용하는 것보다 훨씬 편리하다.
물론 인터넷에서 인터넷 프로토콜 IP 를 사용하는 방법이 유일한 방법은 아니다. 예를 들어, 여러 X.25 패킷 스위칭 네트워크 상호 연결이 있는 경우 상호 연결된 네트워크 인터페이스가 ITU-T X.75 권장 사항을 충족하기만 하면 됩니다. 현재 세계 각국이 사용하는 X.25 공공 데이터 네트워크의 상호 연결은 모두 이런 방식을 채택하고 있다. 하지만 현재 전 세계적으로 IP 프로토콜을 사용하는 누리꾼 수는 X.75 를 사용하는 누리꾼 수를 훨씬 넘는다.
다음 섹션부터 인터넷의 핵심 프로토콜, 즉 인터넷 프로토콜 IP 에 대해 논의합니다.
2.IP 주소 및 해당 표현
인터넷의 인터넷 프로토콜 IP
인터넷 프로토콜 IP 는 TCP/IP 시스템에서 가장 중요한 두 프로토콜 중 하나입니다 [Steve 94] [Come 95]. IP 프로토콜과 함께 사용되는 프로토콜은 세 가지가 있습니다.
● ARP (주소 확인 프로토콜);
● 역방향 주소 확인 프로토콜 (rarp);
● 인터넷 제어 정보 프로토콜 (ICMP).
그림 6.2 는 이 세 가지 프로토콜과 인터넷 프로토콜 IP 간의 관계를 보여줍니다. 이 계층에서 ARP 와 RARP 는 맨 아래에 그려져 있습니다. IP 는 이 두 프로토콜을 자주 사용하기 때문입니다. ICMP 는 IP 프로토콜을 사용하기 때문에 이 계층의 맨 위에 그려집니다. 이 세 가지 계약은 나중에 소개 될 것입니다. 인터넷 프로토콜 IP 를 통해 상호 연결할 수 있는 많은 컴퓨터 네트워크가 통신할 수 있기 때문에 TCP/IP 시스템의 네트워크 계층을 인터넷 계층이라고 합니다.
참, 우리는 때때로 "우리는 TCP/IP 프로토콜을 사용하여 네트워크 상호 연결을 한다" 는 부정확한 말을 듣는다. 저자는 TCP 가 인터넷 프로토콜 IP 와 함께 사용되는 전송 프로토콜임을 독자에게 상기시킵니다. TCP 는 네트워크 계층 프로토콜이 아닌 OSI 의 전송 계층 프로토콜과 같습니다. 따라서 TCP 와 네트워크 상호 연결은 직접적인 관계가 없습니다.
1 IP 주소 및 변환
TCP/IP 시스템에서는 IP 주소가 가장 중요한 개념이므로 반드시 알아야 합니다.
(1)IP 주소 및 해당 표시
우리는 전체 인터넷을 하나의 추상적인 네트워크로 본다. IP 주소란 인터넷에 연결된 각 호스트에 고유한 32 비트 주소를 할당하는 것입니다. IP 주소의 구조를 통해 인터넷에서 쉽게 주소를 지정할 수 있습니다. 즉, 먼저 IP 주소의 네트워크 번호 net-id 를 기준으로 네트워크를 찾은 다음 호스트 번호 host-id 를 기준으로 호스트를 찾을 수 있습니다. 따라서 IP 주소는 단순히 컴퓨터의 번호가 아니라 네트워크에 연결된 컴퓨터를 나타냅니다. IP 주소는 이제 인터넷 정보센터 인터넷에서 지정합니다.
IP 주소 관리를 용이하게 하기 위해, 동시에 네트워크의 차이가 매우 크다는 것을 감안하여, 어떤 네트워크 호스트는 많고, 어떤 네트워크 호스트는 매우 적다. 따라서 인터넷의 IP 주소는 A ~ E 의 다섯 가지 범주로 나뉩니다 (그림 6.3). 일반적으로 사용되는 클래스 a, 클래스 b 및 클래스 c 주소는 다음과 같은 두 개의 필드로 구성됩니다.
● 네트워크 번호 필드의 net-id 입니다. 클래스 a, 클래스 b 및 클래스 c 주소의 네트워크 번호 필드 길이는 각각 1, 2 및 3 바이트입니다. 네트워크 번호 필드 앞에는 1 ~ 3 자리 범주 비트가 있으며 값은 각각 0, 10 및 1 10 으로 지정됩니다.
● 호스트 번호 필드 호스트 id 입니다. 클래스 a, 클래스 b 및 클래스 c 주소의 호스트 번호 필드 길이는 각각 3, 2 및 1 바이트입니다.
클래스 D 주소는 주로 인터넷 아키텍처 보드 (IAB) 에 예약된 그룹 캐스트 주소입니다. 클래스 e 주소는 향후 사용을 위해 예약됩니다. 현재 널리 사용되는 IP 주소는 A 부터 C 까지입니다.
클래스 a IP 주소의 네트워크 번호가 많지 않습니다. 현재 신청할 수 있는 IP 주소는 클래스 B 와 클래스 C, 한 회사가 IAB 에 IP 주소를 신청할 때 실제로 하나의 네트워크 번호 net-id 만 받습니다. 특정 호스트 번호 호스트-ID 는 회사 관할 범위 내에 중복된 호스트 번호가 없는 한 회사 자체에서 지정합니다.
우리는 종종 32 비트 Ip 주소 중 8 자리마다 동등한 10 진수를 사용하여 이 숫자들 사이에 점을 추가합니다. (데이비드 아셀, Northern Exposure (미국 TV 드라마), 자기관리명언) 이것은 점 10 진수 표기법이다. 예를 들어, 다음과 같은 IP 주소가 있습니다.
10000000 000010110000001/kloc-;
클래스 b IP 주소입니다. 127.5438+01.3.36438+0 으로 기억한다면 훨씬 편리합니다.
IP 주소를 사용할 때 그림 6.4 에 제공된 특수 주소도 알아야 하며 일반적으로 사용되지 않습니다.
이렇게 하면 그림 6.5 와 같이 IP 주소 사용 범위를 얻을 수 있습니다.
IP 주소에는 다음과 같은 중요한 특징이 있습니다.
(1)IP 주소는 계층화되지 않은 주소 구조입니다. 즉, 전화 번호의 구조와 달리 IP 주소는 호스트 위치의 지리적 정보를 반영하지 않습니다.
(2) 호스트가 두 네트워크에 동시에 연결된 경우 (호스트가 라우터로 사용되는 경우), 호스트는 두 개의 해당 IP 주소를 모두 가지고 있어야 하며 네트워크 번호 net-id 는 다릅니다. 이러한 호스트를 다중 호스트라고 합니다.
(3) 인터넷에 따르면 중계기나 브리지로 연결된 여러 LAN 은 여전히 하나의 네트워크이므로 모두 동일한 네트워크 번호 net-id 를 가지고 있습니다.
(4) IP 주소에서 네트워크 번호 net-id 에 할당된 모든 네트워크 (5 장에서 논의한 LAN 또는 6 장에서 논의한 WAN) 는 동일합니다.
(5)Ip 주소는 때때로 네트워크의 주소를 나타내는 데 사용할 수 있습니다. 이때 IP 주소의 호스트 번호 필드를 모두 0 으로 설정하기만 하면 됩니다. 예를 들어 10.0.0, 175.89.0.0, 201.1;
그림 6.6 은 라우터 (문자 R 로 표시) 와 브리지 (문자 B 로 표시) 로 연결된 인터넷을 보여 줍니다. 이 인터넷은 두 개의 네트워크로 상호 연결되어 있습니다. 그림의 작은 원은 다른 IP 주소가 필요함을 나타냅니다. 컴퓨터가 다른 네트워크 번호의 컴퓨터와 통신하려면 라우터를 통과해야 합니다. 라우터는 둘 이상의 네트워크에 연결되므로 일반적으로 두 개 이상의 IP 주소를 가지고 있습니다. 두 개의 라우터가 지점 간 링크를 통해 연결되어 있습니다. 애드혹 링크는 네트워크가 아니기 때문에 라우터는 해당 링크가 연결된 포트에 다른 IP 주소가 없습니다.
그림 6.6 IP 주소가 필요한 곳
3.IP 주소 및 물리적 주소
애니메이션 IP 주소와 물리적 주소의 차이점
(2).IP 주소 및 물리적 주소
IP 주소를 배울 때 호스트의 IP 주소와 물리적 주소의 차이를 구분하는 것이 중요합니다. 위의 애니메이션은 이 두 주소의 차이점을 강조합니다. 호스트가 LAN 을 통해 상호 연결된다고 가정합니다. IP 주소는 IP 데이터그램의 머리에 있고 하드웨어 주소는 MAC 프레임의 머리에 있습니다. IP 주소는 네트워크 계층 이상에서 사용되고 하드웨어 주소는 링크 계층 이하에서 사용됩니다.
위의 개념을 강조하기 위해 그림 6.7 을 사용하여 전송 중 패킷이 사용하는 다양한 주소를 보여 줍니다. 그림에는 세 개의 네트워크가 있습니다. 두 개의 이더넷은 FDDI 네트워크를 통해 상호 연결됩니다. 이더넷의 호스트 HA 는 다른 이더넷의 호스트 HB 와 통신합니다. 두 호스트의 IP 주소는 각각 IP 1 및 IP6 이고 하드웨어 주소는 각각 HA 1 및 HA6 입니다. 통신 프로세스는 라우터 R 1, 라우터 R2, 호스트 HB 를 찾는 것입니다.
● IP 계층의 추상 인터넷에서는 IP 데이터그램만 볼 수 있습니다. IP 데이터보의 헤더에는 소스 주소가 IP 1 이고 대상 주소가 IP6 이라고 적혀 있습니다. 라우터가 통과하는 IP 는 IP 데이터그램의 헤더에 나타나지 않습니다.
● 활성 스테이션의 IP 주소가 IP 데이터그램의 보고 헤더에 있지만 라우터는 대상 스테이션의 IP 에 따라서만 라우팅됩니다.
● 특정 물리적 네트워크의 링크 계층에서는 MAC 프레임 (X.25 네트워크 링크 계층의 HDLC 프레임) 만 볼 수 있습니다. IP 데이터그램은 MAC 프레임에 캡슐화되어 있습니다. MAC 프레임이 서로 다른 네트워크를 통해 전송될 때 MAC 프레임의 헤더는 다릅니다. 전송이 시작될 때 MAC 프레임의 헤더는 하드웨어 주소 HA 1 에서 하드웨어 주소 HA2 로, FDDI 네트워크의 경우 HA3 에서 HA4 로, 마지막으로 두 번째 이더넷에서 MAC 프레임은 HA5 에서 HA6 으로 채워집니다. MAC 프레임 헤더의 이러한 변경은 상위 IP 레이어에서도 보이지 않습니다.
● 라우터 R 1 및 R2 는 각각 두 개의 IP 주소와 두 개의 하드웨어 주소를 가지고 있습니다. 이는 두 네트워크에 동시에 연결되어 있기 때문입니다.
● 인터넷의 하드웨어 주소 체계는 다르지만, IP 계층의 추상 인터넷은 하층의 복잡한 세부 사항을 차단하여 단일한 추상적인 IP 주소로 통신할 수 있게 해 줍니다.
세심한 독자는 아직 해결되지 않은 두 가지 중요한 문제가 있다는 것을 알게 될 것이다.
(1) 호스트나 라우터의 하드웨어 주소를 어떻게 알 수 있습니까?
(2)2)IP 데이터그램은 다음 라우터를 어떻게 찾습니까?
이 두 가지 문제는 뒤에서 토론할 것이다.
4. 서브넷 및 주소 변환
4. 1. 서브넷
(3) 서브넷
지금 보니 당초의 IP 주소 디자인은 확실히 불합리하다. 예를 들어 클래스 a-클래스 c IP 주소에 사용할 수 있는 네트워크 번호는 2 1 10000 개를 초과하고 해당 네트워크에서 사용할 수 있는 총 호스트 번호는 37 억 2 천만 개를 초과합니다.
언뜻 보면 IP 주소가 전 세계적으로 사용하기에 충분한 것 같아요 (70 년대 초 IP 주소 디자이너들이 생각했던 것처럼). 사실 그렇지 않습니다. 첫째, 디자이너는 마이크로컴퓨터가 이렇게 빨리 보급될 것으로 예상하지 않아 각종 LAN 과 네트워크의 호스트 수가 급격히 증가할 것으로 예상하지 못했다. 둘째, IP 주소를 사용하는 것은 낭비입니다. 예를 들어, 회사는 클래스 B 주소를 신청했습니다. 하지만 유닛은 10000 개의 호스트만 있습니다. 따라서 클래스 B 주소에 남아 있는 55,000 개의 호스트 번호가 낭비되었습니다. 다른 단위의 호스트에서는 이 번호를 사용할 수 없기 때문이다.
따라서 현재 IP 주소를 확장하는 방법을 연구하고 있습니다 (다음 섹션 참조).
1985 부터 IP 주소를 보다 유연하게 사용할 수 있도록 Ip 주소에' 서브넷 번호 필드' 가 추가되었습니다.
회사에서 할당한 IP 주소는 IP 주소의 네트워크 번호 net-id 이고, 다음 호스트 번호 host-id 는 회사에서 할당한 것으로 알고 있습니다. 이 디바이스의 모든 호스트는 동일한 네트워크 번호를 사용합니다. 한 유닛에 많은 호스트가 있고 넓은 지역에 분산되어 있는 경우 라우터가 아닌 브리지를 사용하여 이러한 호스트를 상호 연결해야 하는 경우가 많습니다 (라우터가 연결된 호스트 네트워크 번호가 다르기 때문). 교량에는 많은 결점이 있다. 예를 들어 방송 폭풍을 일으키기 쉽고, 네트워크 장애 시 격리관리가 쉽지 않다. 이 유닛의 호스트를 쉽게 관리할 수 있도록 이 유닛의 호스트를 여러 서브넷으로 나누고 IP 주소의 호스트 번호 필드의 처음 몇 개를 "서브넷 번호 필드" 로 사용하고 나머지는 기본 전화 번호 필드로 유지할 수 있습니다. 이렇게 하면 이 유닛의 서브넷을 라우터를 통해 상호 연결하여 쉽게 관리할 수 있습니다. 서브넷 분할은 순전히 이 단원 내부의 일이므로 이 단원 밖에서는 볼 수 없다는 점에 유의해야 한다. 외부에서 보면, 이 단원은 여전히 하나의 네트워크 번호밖에 없다. 외부 패킷이 해당 단위의 범위에 들어가는 경우에만 해당 단위의 라우터가 서브넷 번호를 기준으로 라우팅되어 대상 호스트를 찾습니다. 단위가 호스트의 지리적 위치에 따라 서브넷을 나누면 관리가 훨씬 쉬워진다. 또한 여기서 말하는 서브넷은 이전 문장 에서 언급한 통신 서브넷 또는 자원 서브넷과는 아무런 관련이 없습니다.
그림 6.8 은 서브넷을 나눌 때 사용되는 서브넷 마스크의 의미를 보여 줍니다. 그림 6.8(a) 은 클래스 B IP 주소의 예를 보여 줍니다. 그림 6.8(b) 은 로컬 제어 섹션에 서브넷 번호 필드가 추가되었음을 보여 주며, 서브넷 번호 필드의 길이는 우리 회사의 상황에 따라 결정됩니다. TCP/IP 시스템은 서브넷 번호 필드의 길이가 32 비트 서브넷 마스크로 표시되도록 지정합니다. 특히 서브넷 마스크는 일련의 "1" 과 일련의 "0" 으로 구성됩니다. 1' 는 네트워크 번호 및 서브넷 번호 필드에 해당하고' 0' 은 호스트 번호 필드에 해당합니다. 그림 6.8(c) 의 경우 첫 번째 서브넷에서 사용할 수 있는 IP 주소는 130.50.4. 1 에서 시작하고 두 번째 서브넷에서 사용할 수 있는 IP 주소는 30.50.8 입니다 IP 주소는 일반적으로 점으로 구분된 십진수 표기법으로 작성되지만 서브넷 마스크는 일반적으로 16 진수 표기법으로 작성됩니다. 특히 서브넷 경계가 바이트 위치에 완전히 없는 경우에는 더욱 그렇습니다.
그림 6.8 서브넷 마스크의 의미
호스트의 IP 주소와 서브넷 마스크를 알고 있다면 IP 데이터그램이 전송되는 위치를 알 수 있습니다.
● 서브넷의 호스트 또는
● 해당 네트워크의 다른 서브넷에 있는 호스트 또는
● 다른 네트워크에 있는 호스트.
간단히 말해 IP 주소에 따라 클래스 A, 클래스 B 또는 클래스 C 주소인지 확인할 수 있습니다. 서브넷 마스크는 서브넷 번호 subnet-id 와 호스트 번호 host-id 사이의 경계선을 나타냅니다.
추가 서브넷 번호 필드를 분할하는 데는 비용이 듭니다. 예를 들어 그림 7-7 의 경우 클래스 B IP 주소는 65,534 개의 호스트 번호를 수용할 수 있습니다. 그러나 서브넷 번호 필드를 6bit 길이로 나누면 최대 62 개의 서브넷을 가질 수 있습니다 (1 및 0 전체 서브넷 번호 제외). 각 서브넷에는 10 비트의 호스트 번호가 있습니다. 즉, 서브넷당 최대 1022 개의 호스트 번호를 가질 수 있습니다. 따라서 총 호스트 번호는 62x 1022=63364 입니다. 서브넷을 나누지 않았을 때보다 작다.
회사가 서브넷을 나누지 않으면 해당 서브넷 마스크가 기본값이고 서브넷 마스크에서 "1" 의 길이는 네트워크 번호의 길이입니다. 따라서 클래스 a, b 및 클래스 c IP 주소의 경우 해당 서브넷 마스크 기본값은 각각 255.0.0.0(0xFF000000), 255.255.0.0(0xFFFF0000) 및 255.
서브넷 마스크를 사용할 때 서브넷 번호 subnet-id 와 호스트 번호 host-id 가 IP 주소에서 쉽게 보이지 않는 경우가 있습니다. 예를 들어 서브넷 마스크는 OxFFFFFFEO 이고 IP 주소는 140.252.20.68 입니다. 분명히 이 IP 주소는 클래스 B 주소이므로 네트워크 번호 net-id 는 140.252 입니다. 서브넷 마스크에서 결론을 내릴 수 있습니다. 이진 표현은 다음과 같습니다.
1111111 Kloc-0/111111/;
서브넷 번호 * * * 는 1 1 비트가 있고 호스트 번호는 5 자리입니다. 위 IP 주소의 마지막 두 바이트 (20.68) 의 이진 표현은 다음과 같습니다.
00010100 01000100
처음 1 1 비트는 서브넷 번호이고 마지막 5 자리는 호스트 번호입니다. 따라서 십진법의 서브넷 번호는 subnet-id= 162 이고 호스트 번호는 host-id=4 입니다.
서브넷 마스크를 사용하는 것은 3 단계 주소 지정을 사용하는 것과 같습니다. 각 라우터가 패킷을 수신하면 먼저 패킷 IP 주소의 네트워크 번호를 확인합니다. 네트워크 번호가 로컬 네트워크가 아닌 경우 라우팅 테이블에서 다음 스테이션 주소를 찾아 전달합니다. 네트워크 번호가 이 네트워크인 경우 IP 주소의 서브넷 번호를 확인합니다. 서브넷이 서브넷이 아니면 패킷을 같은 방식으로 전달합니다. 서브넷이 로컬 서브넷인 경우 호스트 번호를 기준으로 패킷이 어느 포트에서 호스트로 전달되어야 하는지 확인할 수 있습니다.
예를 들어 패킷 헤더의 대상 주소는 130.50. 15.6 입니다. 이 패킷이 라우터에 도달하면 라우터는 먼저 주소 마스크 (255.255.252.0, 처음 22 개 1, 뒤 10 개 0) 와 대상 주소/kloc/를 마스킹합니다 라우터는 이 네트워크 번호를 검사하여 자신과 같은 네트워크에 있는지 확인합니다. 이제 같은 네트워크에 있다고 가정해 보겠습니다. 라우터가 서브넷 번호를 다시 확인합니다. 위 및 의 마지막 두 바이트인 12.0 은 서브넷 번호와 호스트 번호이며 바이너리 코드 0000110000000 으로 표시됩니다. 처음 6 자리는 서브넷 번호이고, 뒤 10 자리는 주 전화 번호이기 때문이다. 이 패킷의 대상 주소에 있는 서브넷 번호는 3 입니다. 라우터의 서브넷 번호가 3 인 경우 마지막 호스트 번호 10bit 를 기준으로 라우팅 테이블에서 전송 호스트의 포트를 찾습니다. 라우터의 서브넷 번호가 3 이 아니면 라우팅 테이블에서 대상 서브넷으로 전달된 포트를 찾습니다.
4.2. 주소 변환
4. 주소 변환
위에서 언급한 IP 주소는 통신에 직접 사용할 수 없습니다. 그 이유는 다음과 같습니다.
●IP 주소는 네트워크 계층에서 호스트의 주소일 뿐입니다. 네트워크 계층에서 전송된 데이터그램이 대상 호스트로 전송된 경우 링크 계층으로 전송되어야 하며 네트워크로 전송되기 전에 MAC 프레임으로 변환되어야 합니다. MAC 프레임은 소스 및 대상 호스트의 하드웨어 주소를 사용합니다. 따라서 호스트의 IP 주소와 하드웨어 주소 간에 전환해야 합니다.
● 사용자는 기억하기 어려운 호스트 번호를 사용하기를 원하지 않고 기억하기 쉬운 호스트 이름을 사용하기를 원한다. 따라서 호스트 이름과 IP 주소 간의 변환도 필요합니다.
TCP/IP 시스템에는 두 가지 변환 메커니즘이 있습니다.
소규모 네트워크의 경우 TCP/IP 시스템에서 제공하는 hosts 라는 파일을 사용하여 호스트 이름을 IP 주소로 변환할 수 있습니다. 파일 호스트에는 호출 호스트에서 사용할 수 있는 많은 호스트 이름과 IP 주소 간 매핑이 있습니다.
큰 네트워크의 경우 네트워크의 여러 곳에 도메인 이름 시스템 DNS (도메인 이름 시스템) 의 도메인 이름 서버가 있으며, 서로 다른 계층에 호스트 이름 대 IP 주소 변환에 대한 매핑 테이블이 많이 있습니다. 소스 호스트의 이름 확인 소프트웨어 Resolver 는 DNS 의 도메인 이름 서버를 자동으로 찾아 이 변환을 완료합니다. 도메인 이름 시스템 DNS 는 애플리케이션 계층 소프트웨어이며 다음 섹션에서 자세히 설명합니다.
그림 6.9 에서 host-a 라는 호스트는 대상 호스트 이름 host-b 로 시작하는 DNS 를 통해 209.0.0.6 인 host-b 라는 호스트와 통신하려고 합니다.
IP 주소에서 물리적 주소로의 변환은 주소 확인 프로토콜 ARP 에 의해 수행됩니다. 그림 7-8 은 또한 48bit 대상 호스트의 물리적 주소 08002B00EEOA 가 ARP 를 통해 IP 주소 209.0.0.6 에서 얻은 것을 보여 줍니다 (이제 이 호스트가 LAN 에 연결되어 있다고 가정합니다. 네트워크가 WAN 인 경우 WAN 에서 변환된 호스트의 물리적 주소).
IP 주소는 32 비트이고 LAN 의 물리적 주소는 48 비트이므로 둘 사이에는 간단한 변환 관계가 없습니다. 또한 네트워크에서 새 컴퓨터를 자주 추가하거나 일부 컴퓨터를 제거할 수 있습니다. 컴퓨터의 네트워크 카드를 변경하면 물리적 주소도 변경됩니다. IP 주소에서 물리적 주소로의 변환 테이블이 컴퓨터에 저장되어 있어야 하며 자주 동적으로 업데이트할 수 있음을 알 수 있습니다. ARP (address resolution protocol) 는 이러한 문제를 잘 해결합니다.
각 호스트에는 IP 주소에서 물리적 주소로의 매핑 테이블이 포함된 ARP 캐시가 있어야 합니다. 이것들은 호스트가 현재 알고 있는 주소들이다. 호스트 A 가 LAN 의 호스트 B 에 IP 데이터를 전송할 때 먼저 해당 ARP 캐시에 호스트 B 의 IP 주소가 있는지 확인합니다. 그렇다면 해당 물리적 주소를 찾아 MAC 프레임에 기록한 다음 LAN 을 통해 이 물리적 주소로 전송할 수 있습니다.
호스트 b 의 IP 주소를 찾을 수 없을 수도 있습니다. 이는 호스트 b 가 방금 네트워크에 가입했거나 호스트 a 의 전원이 방금 켜져 있고 해당 캐시가 여전히 비어 있기 때문일 수 있습니다. 이 경우 호스트 a 는 자동으로 ARP 를 실행하고 다음 단계에 따라 호스트 b 의 물리적 주소를 찾습니다.
(1) ARP 프로세스는 LAN 에 호스트 B 의 IP 주소로 ARP 요청 패킷을 브로드캐스트합니다.
(2) LAN 내의 모든 호스트에서 실행되는 ARP 프로세스가 이 ARP 요청 패킷을 수신합니다.
③ 호스트 B 는 ARP 요청 패키지에서 자신의 IP 주소를 보고 자신의 물리적 주소가 적힌 ARP 응답 패키지를 호스트 A 에 보냅니다.
4 호스트 A 가 호스트 B 의 ARP 응답 패킷을 받은 후 호스트 B 의 IP 주소와 물리적 주소 간의 매핑을 해당 ARP 캐시에 기록합니다.
대부분의 경우 호스트 A 가 호스트 B 에 데이터를 전송할 때 호스트 B 가 곧 호스트 A 에 데이터그램을 보낼 가능성이 높기 때문에 호스트 B 도 호스트 A 에 ARP 요청 패킷을 보낼 수 있습니다. 네트워크 트래픽을 줄이기 위해 호스트 A 는 ARP 요청 패킷을 전송할 때 IP 주소에서 물리적 주소로의 매핑을 ARP 요청 패킷에 기록합니다. 호스트 b 가 호스트 a 로부터 ARP 요청 패킷을 받으면 호스트 b 는 호스트 a 의 주소 매핑을 호스트 b 의 자체 ARP 캐시에 기록합니다. 이렇게 하면 나중에 호스트 B 가 호스트 A 에 데이터그램을 쉽게 보낼 수 있습니다.
주소 변환 시 역방향 주소 확인 프로토콜 RARP 를 사용하는 경우가 있습니다. RARP 를 사용하면 물리적 주소만 알고 있는 호스트에서 해당 IP 주소를 알 수 있습니다. 이 호스트는 일반적으로 디스크 없는 워크스테이션입니다. 일반적으로 이 디스크 없는 워크스테이션은 ROM 에서 파일 전송 코드를 실행하면 LAN 의 다른 호스트에서 필요한 운영 체제와 TCP/IP 통신 소프트웨어를 다운로드할 수 있지만 이러한 소프트웨어에는 IP 주소가 없습니다. 디스크 없는 워크스테이션은 ROM 에서 RARP 를 실행하여 IP 주소를 얻어야 합니다.
RARP 의 작업 흐름은 대략 다음과 같습니다.
RARP 가 제대로 작동하려면 하나 이상의 호스트가 LAN 에서 RAP 서버 역할을 해야 합니다. 디스크 없는 워크스테이션은 먼저 LAN 에 RARP 요청 패키지 (ARP 요청 패키지와 유사한 형식) 를 전송하여 이 패키지에 자신의 물리적 주소를 제공합니다.
RARP 서버에는 디스크 없는 워크스테이션의 물리적 주소에서 IP 주소로 미리 만들어진 매핑 테이블이 있습니다. RARP 요청 패킷을 수신하면 RARP 서버는 이 매핑 테이블에서 디스크 없는 워크스테이션의 IP 주소를 찾습니다. 그런 다음 RARP 응답 패키지를 작성하여 디스크 없는 워크스테이션으로 반송합니다. 디스크 없는 워크스테이션은 이 방법을 사용하여 자신의 IP 주소를 얻습니다.
(완료)
65438 페이지 +0 2 페이지 3 페이지 4 페이지 5 페이지