본문 바로가기

웹개발/CS

[network] 라우팅

주소와 경로

경로는 MAC 주소로 다음 수신처를 지정하고 IP주소로 최종 수신처를 지정해서 만들어진다. 

라우터는 경로를 결정하는 역할로 자신의 위치에서 최종 수신처까지 가기 위해 다음에 어디로 보내야할지만 결정한다. 

라우터가 네트워크 경계상에 배치되어 전송받은 데이터그램을 라우팅해 다음 수신처를 결정한다. 

이렇게 다음 길을 제시해 가는 방식을 홉바이홉(Hop-by-Hop)이라고 하는데 여기서 홉은 라우터를 가리킨다. 

라우터가 없으면 다른 네트워크에 데이터그램을 보낼 수 없기 때문에 디폴트 게이트웨이(컴퓨터가 지정하는 라우터)를 사용하고 동일 네트워크이면 직접 통신한다.  

 

 

라우터

  • 라우팅해서 다른 네트워크에 데이터를 전송하는 인터넷 작업에 있어서 가장 중요한 장치이다.
    • 라우팅: 데이터그램의 수신처 IP 주소를 근거로 다음에 송신하는 라우터를 결정한다.
  • 네트워크와 네트워크의 경계상에 배치되어 복수의 인터페이스를 가질 수 있다. 라우터의 인터페이스에는 논리 주소인 IP 주소가 설정되어있어 라우터의 각 인터페이스는 각각의 네트워크에 소속되어 있는 형태이다. 
  • 복수의 네트워크끼리 연결하고 다른 종류의 네트워크(이더넷과 WAN)를 연결한다.
  • 필터링 처리를 한다.
    • 필터링: 전송받은 데이터그램에 대해 조건을 붙여 데이터그랜을 파기하는 처리

라우터 동작 

  1. 호스트로부터 패킷을 수신받는다.
  2. 수신처 IP주소로부터 수신처 네트워크를 결정한다. 
  3. 라우팅 테이블에서 다음 중계할 라우터, 송신할 인터페이스가 결정된다. 
  4. 결정된 인터페이스로 패킷을 송신한다.  

이 때 수신처 IP 주소와 비트가 가장 일치하는 것을 선택하는데 이 것을 '최장 일치의 룰'이라고 한다. 

 

 

디폴트 게이트웨이

라우터는 네트워크를 나누기 때문에 브로드캐스트가 다른 네트워크에 송신되지 않도록 하는데 이 브로드캐스트가 도달하는 범위를 '브로드캐스트 도메인'이라고 한다. 네트워크라고 생각해도 된다. 

*충돌 도메인은 스위치가 구분하고 브로드캐스트 도메인은 라우터가 구분한다. 그리고 허브는 어느 쪽에도 영향을 미치지 않는다.

 

라우터는 브로드캐스트를 중지해버리기 때문에 다른 네트워크에 있는 수신처 MAC 주소를 ARP로부터 입수할 수 없다. 이를 가능하게 하는 것이 디폴트 게이트웨이를 이용하는 방법이다. 

컴퓨터가 다른 네트워크가 수신처인 경우 디폴트 게이트웨이로 데이터를 전송한다. 그리고 다른 네트워크에 데이터를 송신할 때 디폴트 게이트웨이로 ARP를 수행한다.

디폴트 게이트웨이의 IP주소는 수동이나 DHCP로 미리 설정해 둔다. 

 

 

라우팅

라우팅 테이블: 수신처 네트워크, 중계지점, 메트릭, 수신처의 출구가 기재되어 있는 표이다. 

필터링: 라우팅 테이블에 수신처 네트워크가 없는 경우 수신처 불명으로 데이터그램을 파기한다.  

라우터는 다른 네트워크 경로를 모두 알고 있고 그 중 최적의 경로를 선택해서 라우팅 테이블을 작성한다. 

이때 경로를 아는 방법에는 정적 라우팅과 동적 라우팅이 있다. 

  • 정적 라우팅: 수동으로 입력한다. 수동으로 입력한 경로가 사용할 수 없게 될 경우 관리자가 수동으로 다시 갱신해주어야 한다. 
  • 동적 라우팅: 라우터가 자동으로 정보를 교환해서 경로를 알아내는 방법 모든 경로 중 최적의 경로를 선택해 라우팅 테이블에 작성한다. 장애를 발견하면 경로를 자동으로 변경한다.
    • 단점: 회선 전송을 압박하고 데이터 전송에 사용되는 분량이 줄어드는 것임으로 저속회선을 사용하는 경우 주의가 필요하다. 서로 교환한 정보를 가지고 최적의 경로를 계산해야 하므로 라우터의 처리 능력이 필요하다. 모든 라우터가 동일한 정보를 가진 상태(컨버전스)여야 한다. 

 

 

라우팅 프로토콜

근접해 있는 라우터 간의 네트워크 정보를 서로 교환하기 위한 규칙으로 교환한 정보를 근거로 라우팅 테이블을 변경한다. AS 간 라우팅용과 AS 내부 라우팅용 두가지가 있다.

 

*네트워크 정보: 정보교환을 언제 할지, 어떻게 할지 누구에게 전송할지, 어떤 정보를 전송할지에 대한 정보이다. 

*AS(자율화 시스템: Autonomous System): 하나의 관리 단체에 의해 관리되는 네트워크 집합체로 복수의 네트워크를 통합해서 큰 단위의 라우팅을 수행한다. 

 

 

RIP

라우팅 업데이트(경로갱신정보): RIP에서 라우터가 다른 라우터와 교환하는 정보이다.

RIP는 라우팅 테이블을 30초에 1번씩 그대로 교환하고 6번 수신받지 않으면 장애가 발생했다고 간주해 그 라우터를 사용하는 경로를 파기한다. 

RIP는 메트릭에서 홉 수(통과하는 라우터 수)를 사용한다. 

업데이트를 수신하면 자기가 모르는 네트워크를 테이블에 추가하는 것이고 이 때 업데이트를 보내온 라우터를 그 앞의 네트워크에의 중계라우터로, 업데이트를 받은 인터페이스를 그 앞의 네트워크에의 송신 인터페이스로 정하도록 한다. 

이미 테이블에 존재하는 네트워크에 대해 새로운 정보가 업데이트 되어 새로운 경로 쪽이 메트릭이 작으면 그쪽을 테이블에 기재한다. 

 

*메트릭: 최적의 경로를 판단하는 기준으로 사용되는 것이다. 

 

 

 

ICMP

3계층의 프로토콜로 네트워크의 제어, 관리 등을 수행하는 '인터넷 제어 프로토콜', 즉 에러 보고 프로토콜이다.  

IP 데이터그램에 ICMP메세지를 넣은 데이터를 주고받는다. 

ICMP메세지

IP 헤더 + ICMP 메세지의 형태

타입(ICMP의 종류)과 코드(그 상세 내용)등이 들어있다. 

Query 메세지(상태를 조사하기 위한 메세지)와 Error 메세지(에러를 통지하기 위한 메세지)로 나뉜다.

 

'웹개발 > CS' 카테고리의 다른 글

[network] IP 어드레싱  (0) 2021.06.27
[network] 1계층 & 2계층 - 신호의 전송과 충돌  (1) 2021.06.24
[network] 네트워크 기초 지식2  (0) 2021.06.22
[server] 서버의 운용 관리  (0) 2021.06.21
[server] 서버 보안  (0) 2021.06.21