DHCP, IPv6 등등

강한친구·2022년 12월 2일
0

컴퓨터 네트워크

목록 보기
18/19
post-thumbnail

DHCP

클라이언트가 서버로부터 IP를 할당받는 과정이다.

과정

  1. 클라이언트 브로드케스트

    • 클라이언트가 자기 ip를 몰라서 DHCP한테 일단 브로드캐스트 주소로 보내버림
  2. 서버가 받아서 하나의 ip를 배당해준다.

  3. 그 중에 하나를 받아서 서버에게 보낼 수 있는데, 이는 브로드캐스팅으로 진행된다.

  4. 그 후 서버가 다시 ack를 보내주면 된다.

IPv6

IPv4가 고갈됨에 따라256비트짜리 IPv6가 도입되었고 헤더는 이렇게 생겼다.

헤더모양이 다르다 주소가 128비트, 16바이트짜리 4줄이나 있다. 헤더의 거의 대부분이 주소이다
또한 헤더에 priority를 줄 수 있는 부분도 있고
Flow lable이라고 불리는 구별장치가 있다.

또한 헤더 40바이트를 고정시키려고 payload 부분에 옵션을 이전시켰다

없어진것들

  • Checksum 라우터마다 또 해야하는게 부하가 커서 걍 없애버림 (TCP UDP는 한번만 하면 되는거라 다름)
  • Fragmentation/reassembly (쪼개고 합치는 기능은 옵션에서 수행 할 수 있도록 이전)
  • No option (페이로드로 이동)
    다음 헤더를 표시할 수 있는 헤더 내 기능이 있는데 이 코드들을 이용해서 옵션헤더들이 꼬리를 물고 계속 나올 수 있다.

Fragment 대신 생긴 기능

이런식으로 헤더에 다음헤더를 표기해서 헤더 fragment대신에 연결이 가능하다.

Tunneling and Encapsulation

각 end system은 ipv6가 되었다고 해도 부분들은 아직 ipv4 네트워크가 되어있다.
이는 터널링을 통해 넘어가는데, 쉽게 말해서 편지봉투안에 집어넣어서 그냥 라우터에 넣어버려서 ipv4처럼 이동시키는 개념이다.

현재는 빅테크기업들 위주로 ipv6가 진행중이며 구글 클라이언트의 30%, 미국 정부기관의 33%가 ipv6이다.

SDN

Match

우선 header field를 통해 match 과정을 통해서 맞는지 확인하고

Action

  1. Forward packet to port(s)
  2. Drop packet
  3. Modify fields in header(s)
  4. Encapsulate and forward to controller

이런식으로 action을 취한다.

stats는

Stats 는 통계적 기록이다
이를 기반으로 openflow라는 테이블이 만들어지는데 이는 라우터가 만드는게 아니라 외부 컨트롤러가 만든다. 컨트롤러가 외부로부터 정보를 받아서 작동한다.
오픈 플로우 1.0은 11개의 정보를 가지고 판단하고, 3.0에서는 41개?를 본다

SDN의 효능

단순히 포트넘버를 보고 전달해주는것도 가능하지만, firewall이 작동해서 커넥션이 온 것을 사전 설정에 따라 block할 수 도 있고 혹은 소스주소를 보고 drop할 수도 있다.

혹은 layer2 스위치에서는 맥주소를 보고 드랍하는것도 가능하다.
SDN을 쓰면 path를 내가 임의로 만드는것도 가능하다.
내가 원하는걸 다 구현할 수 있다.

IP Hourglass

원래는 네트워크의 허리에는 IP라는 프로토콜이 하나만 있었는데 점점 허리부분에 다양한 프로토콜이 들어오면서 살이찌고있다.

0개의 댓글