본문 바로가기
CS

네트워크 기본

by wwns 2024. 1. 9.
반응형

인터넷보다 네트워크가 더 큰 개념

 

네트워크 종류

  1. 목적
    1.  인트라넷
      • 기관 내부 목적으로 사용되는 네트워크
      • 기업 내 통합 네트워크 지향
    2. 익스트라넷
      • 기업 내 인트라넷의 확장
        • 기업 내 및 외부 협력업체와의 통신을 위한 사설망 형태
        • A기업과 B기업 각각이 인트라넷으로 내부망을 사용하는데, A, B기업 간의 통신도 필요한 경우 스위치? 라우터?를 두고 연결
    3. 인터넷
      • 모든 지역전산망과 컴퓨터가 상호접속된 세계 최대 전산망
      • 기본 프로토콜로는 TCP/IP 프로토콜 군을 중심으로 운영
      • e.g) ISP 업자로 A, B 기업이 인터넷에 연결될 수 있게 함
  2. 크기
    1. WAN (Wide Area Network)
      • 통신업자가 제공하는 전용선이나 전화회선 같은 시리얼 라인(랜선, 인터넷선) 또는 회선교환망, 패킷교환망 등으로 구성한 공중용 광역 네트워크
        • MAN 보다 더 넓은 지역을 수용
    2. LAN (Loca Area Network)
      • 근거리 지역 내 다양한 컴퓨터의 상호 접속 및 컴퓨터 자원의 공유 (상용 프로그램, 프린터 공유 등)
      • 물리매체 및 속도에 따라 이더넷, 토큰 링, FDDI, ATM 등이 가능하나, 이더넷이 가장 광범위하게 이용되고 있음
  3. 모양
    1. Bus
      1. 간선에 단말기(PC)를 연결하는 구조
      2. 거리가 멀수록 신호가 약해지기 때문에 증폭기(허브)가 꼭 필요함
      3. 간선 사이에 허브가 망가지면 왼쪽, 오른쪽 부분에 문제가 생길 수 있음
        1. 방향성이 없기 때문에 망가진 포인트의 왼쪽, 오른쪽에서 전기가 충돌 나면서 데이터 손실이 나타날 수 있음
    2. Tree
      1. Bus에서 발전한 형태
      2. 간선에 단말기가 아닌 허브가 연결되며, 각 허브를 중심으로 Star구조가 만들어짐
    3. Star
      1. 선형 구조
      2. 스위치 혹은 라우터, 허브가 중심이 되어 PC들을 연결해줌
        1. 대신 중심의 중계기가 망가지면 전체 서버가 다운
    4. Ring
      1. Bus에서 간선 끝을 이어준 형태
      2. 문제가 발생하면 간선을 끊어주어 Bus형태로 변환할 수 있는 형태
        1. 단 양방향으로 간선이 끊어지면 해당 단말기들은 고립됨
    5. Mesh
      1. 인터넷의 근간이 되는 구조
      2. 여러 경우의 수가 존재하기 때문에 문제가 발생해도 여러 방법으로 전달되기에 가장 안전
      3. 구축 비용이 비싸고, 최적의 길을 찾는 비용이 필요

네트워크를 쪼개는 서브네팅

 

사칙연산이 적용되지 않는 네트워크를 쪼개는 방법?

  1. Bit (b)
  2. Byte (B, 1B = 8b)

 

IP란? 목적지의 주소

  • IP 주소 -> 32b = 4B (43억 개의 IP 2^32)
  • 연구, 군사 목적으로 사용하다 보면 고갈되기 쉬움
  • 따라서, 네트워크를 분리하여야 함

 

  1. 클래스
    1. IP를 A, B, C, D, E 클래스로 나눈다
    2. A클래스는 전체의 1/2
      • 어떻게 나누냐? 맨 앞 2진수를 0으로 주고 나머지 2진수를 자유롭게 써라
      • 0000 0000 ~ 0111 1111은 A클래스 -> 0.~ 에서 127.~은 A클래스
    3. B클래스는 남은 1/2의 1/2
      • A클래스가 맨 앞 0을 썼으니 맨 앞을 1로 하고 두 번째를 0으로 두면 됨
      • 10 00 0000 ~ 10 11 1111은 B클래스 128.~ 에서 191.~은 B클래스
    4. C클래스는 B클래스의 1/2
      • 110 0 0000 ~ 110 1 1111은 C클래스 192.~에서 223.~은 C클래스
    5. D, E도 마찬가지 (생략)
  2. 예약된 IP 주소 (비공인 IP로 외부에 사용되는 IP가 아님)
    1. A 클래스
      1. 0.0.0.0/8: 대표 IP
        • 현재 네트워크 (소스 주소로만 유효)
      2. 10.0.0.0/8: 사설 IP
        • 개인 네트워크 내의 로컬 통신에 사용
      3. 127.0.0.0/8: 루프백 IP
        • 로컬 호스트로의 루프백 주소에 사용
    2. B 클래스
      1. 169.254.0.0/16: Zeroconf IP
        • 일반적으로 DHCP 서버에서 검색되는 것과 같이 IP 주소가 지정되어 있지 않은 경우 단일 링크에서 두 호스트 간의 링크 로컬 주소에 사용
      2. 172.16.0.0/12: 사설 IP
        • 개인 네트워크 내의 로컬 통신에 사용
    3. C 클래스
      • 192.168.0.0/16: 사설 IP
        • 개인 네트워크 내의 로컬 통신에 사용
    4. 255.255.255.255/32: BroadCast IP
      • "제한된 브로드 캐스트"대상 주소로 예약

SUBNET - 네트워크를 부분 부분 만든다

  • 서브네트워크는 네트워크 내부의 네트워크입니다. 서브넷은 네트워크를 보다 효율적으로 만듭니다. 서브넷을 통해 네트워크 트래픽은 불필요한 라우터를 통과하지 않고 더 짧은 거리를 이동하여 대상에 도달할 수 있습니다
  • 서브넷 구성 -> 네트워크 bit와 호스트 bit로 구성

https://www.cloudflare.com/ko-kr/learning/network-layer/what-is-a-subnet/

  • Name : Network Bit
  • Purpose : Network ID
  • Mark : bit 1
  • Example :
    • 192.168.0.1 / 12 -> 12개의 비트는 1로 쓴다
      • 1111 1111 1111 1111 0000 0000 0000 0000 -> 255.240.0.0
  • / 12의 의미는 12개의 bit는 1이어야 하고, 나머지 bit 20개는 바꿀 수 있다
  • Name : Host Bit
  • Purpose : HOST ID
  • Mark : bit 0
  • Form : Various
  • EX. 192.168.0.1 / 12 -> 호스트를 2^20 - 2개 가질 수 있다
    • 제일 첫 번째 IP와 제일 마지막 IP는 사용하지 않음
    • 맨 앞은 Host 대표 IP로 씀, 맨 마지막은 브로드캐스트 IP로 씀

 

IP의 낭비와 부족?

  • IPv6는 2^128개의 IP를 제공할 수 있음
  • 하지만, 모든 라우터가 IPv6를 호환할 수 있다는 보장이 없음
  • 사설 네트워크 + NAT를 조합하여 효율적으로 문제점을 해결할 수 있다

예시 -> 192.168.1.0 / 24

  • prefix 24가 깔렸다는 건 앞에 24bit가 1로 깔리고, 나머지 8bit를 사용하여 Host bit를 채울 수 있음
  • 만약 부서가 5개이고, 5개 부서에 동일하게 IP를 나눠서 쓰라고 하고 싶음
    • 컴퓨터는 이 진수이기 때문에 5개의 부서를 표현하려면 3bit를 활용해야 함
  • 남은 8bit 중 앞의 3bit를 Network bit로 사용하고 뒤에 5bit를 각 부서에 나눠줄 수 있음

결론적으로 5개의 부서에 IP를 각 32개씩 할당할 수 있음

정확히 IP를 5등분 하는 게 아니라 Host 비트만 공평하게 나눠주자

  • 회사에 할당된 IP => 192.168.1.0 / 24
  • 각 부서로 5등 분하자 했더니 네트워크 비트를 3비트 사용해야 공평하게 Host Bit를 나눌 수 있다
  • 1번 부서의 서브넷은? 192.168.1.0 / 27 (24 + 3)
  • 2번 부서의 서브넷은? 192.168.1.32 / 27
  • ... 이렇게 나누어지는 것

IP를 할당할 때 꼭 2개의 IP를 할당해줘야 한다

 

대표 IP : 네트워크의 ID(주소) -> Host bit = 0 

브로드캐스트 IP : 네트워크 방송용 -> Host bit = 1

 

  • EX
  • 요구사항: 각 강의실에 15개의 Host에 IP를 할당하고 싶으며 강의실을 최대한 많이 만들고 싶음
    • 회사에 할당된 서브넷은 192.168.2.0 / 24 임
    • 2^4 = 16이므로 4개의 Host Bit가 필요하다고 생각할 수 있음
    • 대표 IP, 브로드캐스트 IP 2개를 할당해야 하므로 최소 5개의 Host Bit를 설정해야 함
    • 네트워크 Bit를 최대 3개 사용할 수 있으므로 강의실을 8개까지 만들 수 있음
  • 10.0.0.0 / 8인 네트워크를 2980개의 지사 네트워크로 쪼개고 싶다
    • NNNN NNNN HHHH HHHH HHHH HHHH 총 24개의 bit를 Host Bit로 사용할 수 있다
    • 2980 <= 2^12 이므로 최소 12개의 Network Bit가 필요하다
    • 따라서 최대 12개의 Host Bit를 사용할 수 있다
    • 각 네트워크는 1 <= Host <= 4096개의 호스트를 가질 수 있다

VLSM (Various Length Subnet Mask) -> 서브넷의 심화

서브넷 마스크의 가변적인 길이 -> 서브넷 길이가 가변적이다

 

낭비되는 Host 주소들을 줄이기 위해 VLSM을 사용할 수 있다

 

192.168.1.0 / 24 네트워크가 있으며 할당해야 하는 호스트 테이블이 있다

 

그룹 인원 Host Bit
A 61 6
B 15 5
C 15 5
D 4 3
E 20 5
F 25 5
G 12 4

 

Host Bit가 높은 순서대로 정렬하여 처리한다

192.168.1.0 / 24 네트워크의 최대 Host Bit는 8bit이고, A그룹에 대해 할당하게 되면

따라서 맨 끝(xxxx xxxx)부터 할당하게 되면 192.168.1.192(11xx xxxx) / 26 네트워크로 표현할 수 있음

  • A그룹 네트워크 : 192.168.1.192 / 26 

그다음 B 그룹에 대해 네트워크를 분할하면 5bit만 필요하다

앞의 비트 11을 사용했으므로, 10, 01, 00 네트워크가 남게 됨

101x xxxx부터 시작하면 된다 -> 192.168.1.160 / 27

  • B그룹 네트워크 : 192.168.1.160 / 27

101을 사용했으니까, 100이 남게 됨 따라서 C그룹은 100x xxxx부터 사용하면 된다

  • C그룹 네트워크 : 192.168.1.128 / 27

그다음은 10까지 사용했으니, 01이 남음 따라서 E그룹은 011, F그룹은 010

  • E그룹 네트워크 : 192.168.1.96 / 27
  • F그룹 네트워크 : 192.168.1.64 / 27

00이 남았으므로 G 그룹은 00xx xxxx에서 4bit가 필요하므로 0011 xxxx이다

  • G 그룹 네트워크 : 192.168.1.48 / 28

마지막 D 그룹은 3bit만 필요하고 0011까지 사용했으므로 0010 1xxx다

  • D 그룹 네트워크 : 192.168.1.40 / 28

 

VLSM으로 구성할 시 낭비되는 Host IP가 적으나 구분하는데 더 복잡? 하다


References

공인 IP 주소, 사설 IP 주소 및 예약된 IP 주소란 무엇입니까? | IP 주소 (한국어) 🔍 (ipshu.com)

 

공인 IP 주소, 사설 IP 주소 및 예약된 IP 주소란 무엇입니까?

인터넷 시대에 인터넷을 서핑할 수 있는 대부분의 사람들은 IP 주소에 대해 그다지 낯설지 않아야 한다고 생각합니다. 그러나 IP 주소는 공개 주소, 비공개 주소 및 예약 주소로 분류되어 많은 사

ko.ipshu.com

서브넷이란? | 서브넷마스크 작동원리 | Cloudflare

[Network]서브넷(Subnet) (tistory.com)

 

[Network]서브넷(Subnet)

이 글을 읽기전에 IP주소의 개념과 네트워크 클래스를 알 필요가 있다. 따라서 이 글을 읽기 전에 링크를 참고하기를 추천한다. [Network]IP주소(IP Address)http://hyoje420.tistory.com/10 [Network]네트워크 클

hyoje420.tistory.com

 

반응형

'CS' 카테고리의 다른 글

리눅스 OS 기본 이론  (0) 2024.01.12
네트워크 구성  (0) 2024.01.11
OS - Virtual Memory  (0) 2023.11.06
OS - Memory Management2  (0) 2023.11.01
OS - Memory Management  (0) 2023.11.01