네트워크 기초 용어
1. 시스템 구분
- 노드 : 인터넷에 연결된 시스템의 가장 일반적인 용어
- 호스트 : 컴퓨팅 기능이 있는 시스템
- 클라이언트 : 서비스를 요청하는 시스템
- 서버 : 서비스를 제공하는 시스템
2. 네트워크 주소
- 네트워크 상에 존재하는 노드를 고유하게 식별
3. 주소 종류
- MAC주소 : Link계층에서 사용 - LAN카드에 내장
- 비유하자면 물류센터 주소, 우체국 간에 사용하는 주소
- IP주소 : 네트워크 계층에서 사용
- 비유하자면 집 주소
- Port 번호 : 전송 계층에서 사용
- 비유하자면 방 번호, 수령인
- 특정 기능을 수행하는 서비스, 패키지의 경우에는 특정 포트를 이용하는 것이 규약 되어있음 (mysql : 3306, ubuntu : 80, SSH : 22 ... 등등)
- 위와 같이 이미 쓰고 있는 포트들은 사용하면 오류가 나기 때문에 다른 포트 번호를 사용해야 한다.
- 메일주소 : 메일 시스템에서 사용
IP주소
IPv4 프로토콜에서 사용 – 32 비트 크기의 주소 체계 (2의 32제곱)
IPv6에서는 비트 주소 체계로 확장
- TCP/IP를 사용하는 네트워크에서 모든 컴퓨터와 전산장비를 구별하기 위한 주소
- IP주소는 32개의 이진수로 구성됨.(232 = 4,294,967,296개)
- IP주소를 쉽게 구별하기 위해 4개의 십진수로 표현
- 11000000.10101000.01100100.00000001 => 192.168.100.1
IP주소 체계
A. 네트워크 크기에 따라 클래스 구분
B. 클래스 C : 8 비트 Host – 256개 컴퓨터 포함
- IP주소 = 구분자 + 네트워크 ID영역 + 호스트 ID
- 네트워크 ID : 인터넷에서 그룹을 식별하기 위한 주소영역
- 호스트 ID : 해당 네트워크에서 각각의 호스트를 식별하기 위한 주소영역
B클래스는 IP주소가 10으로 시작한다. IP주소 체계는 8비트 단위로 나뉘어져 있기 때문에 B클래스의 처음 8비트를 구성하는 범위는 10000000(128) ~ 10111111(191)이 된다. 이 말은 IP주소가 해당 범위에 포함된다면 B클래스로 분류됨을 의미한다. 같은 방법으로 A클래스가 가지는 8비트 범위는 00000000(0) ~ 01111111(127), C클래스는 11000000(192) ~ 11011111(223)가 된다.
클래스마다 사용할 수 있는 네트워크ID 비트 수가 다르다. A클래스의 경우에 전체 32비트 중 구분자 1비트와 네트워크 7비트를 제외한 나머지 24비트가 호스트 ID로 구분된다. 호스트 ID의 비트 수가 많을 수록 호스트 주소를 많이 가질 수 있기 때문에 A클래스가 다른 클래스들 보다 가격이 있는 것이다.
그러나 호스트ID가 가지는 주소를 모두 부여받을 수 있는 것은 아니다. 만약 C클래스에서 호스트 주소를 부여한다고 가정할 때, 호스트 ID는 8비트 영역을 가지고 있으니 256개를 부여할 수 있는 것이 맞을 것이다. 그러나 가장 작은 값인 00000000이나 가장 큰 값인 11111111의 경우에는 이미 역할이 있는 주소이기 때문에 사용할 수 없다. 00000000의 경우 비유하자면 도로명 주소같이 대표주소의 기능을 한다. 11111111은 브로드캐스트 주소라고 하며 방송용, 방출용 주소의 기능을 한다. 그러므로 256개가 아닌 254개의 주소를 부여할 수 있게 된다.
그러면 여기서 생각해 볼 부분이 있다. 만약 특정 기업의 영업본부와 물류본부가 각각의 대표주소를 가지고 싶은 경우에는 ip를 두 개를 생성해야할까? 🤷♀️
정답은 NO이다. 그 이유는 아래의 서브넷마스크를 공부하며 알아보자.
네트워크 주소에 대해 더 알아보기
DNS : Domain Name Server
IP주소값을 실제로 사용하는 것은 상당히 불편하기 때문에 도메인 주소를 할당해서 매핑하여 사용한다.
라우터(Router)의 경로 선택
라우터 : 물건을 전달하는 과정 중에 있는 경유지, 허브 혹은 공유기와 같은 기능을 한다.
호스트 이름
호스트.단체이름.단체종류.국가도메인
ex) www.naver.com
국가 도메인
국가 도메인 | 해당 국가명 |
kr | 한국 |
jp | 일본 |
us | 미국 |
단체 종류
단체 종류 | 기관 성격 |
co | 회사 |
ac | 교육 기관 |
go | 정부 기관 |
서브넷팅
C클래스가 A,B클래스에 비교하면 작은 범위일지라도 네트워크가 작은 100명 이하의 회사규모에서는 큰 범위이기 때문에 IP주소의 낭비가 발생할 수 있다. 이 경우에도 서브넷마스크를 사용하여 주어진 클래스 주소를 분할하여 더욱 효율적으로 사용할 수 있다. 이를 서브넷팅(VLSM이라고도 한다. : Valuable Length Subnet Mask)이라고 한다.
서브넷 마스크
서브넷 마스크는 네트워크를 효율적으로 관리하기 위해 사용하는 수단이다. 회사의 부서 간에 망을 분리하는 경우와 같이 하나의 회사 네트워크망을 쪼개서 사용하는 경우에 사용하게 된다.
위에서 언급했듯이 대표주소를 하나 더 만들기 위해서 서브넷 마스크를 사용할 수 있다. 방법은 AND연산을 사용하여 Host IP측은 대표주소가 나오도록 한다.
Host IP부분이 0으로 사용가능 범위 전체가 채워지면 대표주소라는 것을 기억해보자. 만약 우리가 211.168.83.85라는 ip주소값을 부여받았다고 가정한다면, 앞의 8비트 부분이 211의 값을 가지므로 C클래스의 범위에 포함될 것이다. 그렇기 때문에 211.168.83이라는 네트워크IP는 8비트의 Host IP주소를 가질 수 있다. 여기서 대표주소를 하나 더 가지기 위해 AND연산을 사용하게 된다.
AND연산 : 1과 1이 만나는 경우만 true(1), 나머지는 false(0)
입력값 | 반환값 |
0,0 | 0 |
0,1 | 0 |
1,0 | 0 |
1,1 | 1 |
기존에는 00~00가 유일한 대표주소의 기능을 하였지만, 서브넷 마스크를 이용하게 되면 00~00값과 10~00값이
AND연산을 사용할 때 네트워크 주소는 모두 1로 채우고 호스트 주소는 앞자리가 1, 나머지가 0으로 채워진 값을 사용한다.
나는 아이패드가 없는 슬픈 학생이기 때문에 ppt로 표현해봤다. 진짜 아이패드 마렵다.🤦♀️
그러면 같은 원리로 A클래스는 네트워크IP 범위가 8비트이므로 1을 8번채우고 나머지를 다 0으로 채운 값으로 AND연산을 하는 것이다. 결과값의 호스트IP가 0으로 채워지는 경우 대표주소의 기능을 하기 때문에!
특정 Class n개로 분할해주는 경우
서브넷팅은 주어진 서브넷마스크에서 1의 개수를 증가시킴으로써 네트워크를 분리하는 기술이다.
만약 C클래스를 두 개로 분할하여 사용하고 싶은 경우에는 호스트 IP를 1000~0으로 채운 값으로 AND연산을 사용하면 된다. 하나의 비트를 사용하게 되면 2¹ = 2이기 때문에 2개로 분할이 된다. 마찬가지로 4개로 분할하고 싶은 경우, 2² = 4로 110~0으로 채워줄 수 있다. 결과적으로 서브넷의 수는 1의 개수이며 각 서브넷의 호스트 수는 1/2씩 감소하는 규칙을 확인할 수 있을 것이다.
서브넷마스크 계산을 풀이해준 티스토리가 있어서 가지고 와봤당
직접 풀어보고 이해해보자📝
https://liveyourit.tistory.com/230
이건 서브넷 마스크에 대해 찾아보다가 보게 된 티스토리 글
너무 잘 쓰셔서 기말시험 때 참고해야겠당
https://limkydev.tistory.com/166
https://websecurity.tistory.com/94
'DevOps > Cloud' 카테고리의 다른 글
[AWS] EC2, RDS를 이용한 데이터베이스 작업 (0) | 2021.06.08 |
---|---|
[AWS] PHP설치, RDS 인스턴스 생성 (0) | 2021.06.08 |
[AWS] EC2에 MySQL 설치하기 (0) | 2021.05.25 |
[AWS] 우분투 리눅스 기본 명령어 (2) | 2021.05.04 |
[AWS] teraterm을 이용하여 EC2 인스턴스 사용 (0) | 2021.04.26 |
댓글