AWS 한국 본사에서 진행했던 OT 이후,
3/26부터 약 2주간 수업을 들었다.
Cisco Packet Tracer와 GNS 프로그램을 사용하여 네트워크 기본 실습을 진행했으며, VMware를 설치하여 리눅스 환경 실습을 진행하고있다. 주로 기본기 위주로 배우고있다.
전 글에서도 밝혔듯, 수업의 모든 내용을 기록하지는 않을 것 이다.
나중에 따로 보고싶거나, 내가 부족하다고 생각하는 부분이나 중요하다고 생각하는 내용들만 추려서 올릴 예정이다. 오늘 기록도 그러하다.
필기한 내용 중 부분 부분만 잘라서 올릴 것 이기 때문에...
글이 엄청 매우 굉장히 두서가 없을 것을 미리 예고한다... 이걸 보는 사람이 있을지는 모르겠다만...
(그치만 내 공부 기록이니까.. 나만 알아보면 뭐...)
OSI는 Open System Interconnection의 약자로, inter는 무언가를 가로지르는 것 의미.
ex) Internet -> net을 가로지르는 것 <-> Intranet
PDU (Protocol Data Unit) - 상위 계층의 PDU는 하위 계층의 데이터가 됨.
결국 '통신을 어떻게 할 것 인가?' 하는 규약을 정해둔 것이 OSI 7계층.
-- application 7
-- presentation 6
-- session 5
-- transport 4
-- network 3
-- data-link 2
-- 1
이러한 과정들은 정보를 보내기 위함이였고,
정보를 상대방이 받는다면, 1부터 7까지 역으로 decapsulation하며 정보를 찾아감
네트워크 장비가 있다면, 그 밑 계층의 pdu만 까볼 수 있음
5,6,7 합쳐서 application layer
4는 같음 transport layer
3은 internet layer
1,2 합쳐서 network-access layer
사실 요새는 이렇게 계층을 나누는 것이 좀 무의미하다고 한다.
하지만 여전히 네트워크 개념은 정말 중요한 개념이고, 현업에서도 잘 모르는 사람들이 많다 하니 꼼꼼하게 공부해두자.
예시)
c클래스 예시 192.168.0.x에서
x가 0이면 네트워크 주소, 255면 브로드캐스트 주소라 두개는 쓸 수 없음 (보통 그러함).
그래서 위 경우 호스트 수는 <네트워크 규모 - 2> 임. 이 경우 254가 되겠지
브로드 캐스트는 식별을 위해 주로 사용. 어디 교실에서 한 명씩 찾는 것 보다, 여기 누구 있나요~? 하면서 찾는게 더 효율적이니까.
질문)
네트워크 규모, 갯수, 크기 어떻게 하는 것이 유리한가?
답변)
케익이 있는데 16등분 할수있음 16명이서 먹는게 좋음. 2조각 먹으면 14조각 버림.
8명인데 16등분 나누면 1조각씩 먹을 수 있는거 2조각씩 먹음
8명인데 4등분 나누면 또 애매하고
상황에 따라 맞게 설정하는게 좋다.
네트워크 주소 & 서브넷 마스크를 알아야 그 네트워크를 정확히 안다고 말 할 수 있다. 그리고 호스트 주소와 규모만 아아도 그 네트워크를 알 수 있다. 왜? 네트워크는 연속적이기 때문
classful <-> classless
결과적으로 classful -> classless 되었음.
이 클래스 구조/규칙을 딱히 따르지는 않음. 거의 따르지 않는 듯 함
하지만, 기본적인 기념이기에 알아둘 것.
classless하다면 규모를 알기 어렵다.
라우팅: 경로를 알려주는 행위
라우터: 경로를 알려주는 애
라우팅 시 알아야 하는 정보
- 내가 가고싶은 목적지 네트워크 = 대표 주소 & 서브넷 마스크 --> 목적지
- 목적지로 가기 위해 현재 네트워크에서 빠져나가기 위한 첫 번째 관문 --> Next-hop(반드시 같은 네트워크의 주소여야함)
ARP(adress resolution protocol)
네트워크를 지날때마다 출발지 맥주소, 도착지 맥주소는 계속 변하고 ip는 절대 변하지 않음. 결국은 맥주소를 알아내는 것이 목적이랄까
라우터 경로에서, 둘 다 가도 말이 될 때, 조금 더 비트가 일치하는. 즉, ip가 조금이라도 더 비슷한 곳으로 경로 이동
Dynamic Host Configuration Protocol
풀이 꽉 차게되면 fifo 방식같은 느낌으로 ttl 먼저 된 것 부터 삭제시키나?
공격 방법으로 쓰이기도 함. 더 이상 등록이 안되게 더미를 등록시키는.
Variable Length SubnetMask
Open Shortest Path First
NAT에서 source(출발지)는 dynamic하고, --> pat(port NAT)라고 부름
destination(목적지)는 static한 느낌 --> DNAT 라고 부름
nat는 포트 기반으로 작동. 그렇기에 사설 ip들이 공인 ip가 되어 밖으로 통신할 수 있음
NAT의 단계
1. source(출발지)를 정의 - ACL을 사용, Access Control List이며 wcm 사용
2. 내부(inside) / 외부(outside)를 정의
3. NAT 설정
결국, 포트 정보를 기반으로 네트워크 밖으로 나가기도 하고, 다시 찾아 들어오기도 한다.
DNAT(destination nat) : Destination + Static
DNAT -> 유사 포트포워딩
뭐 구분짓는 것 자체가 큰 의미가 없음
서버가 주로 DNAT일 것 이고, pc가 주로 pat겠네.
내부 안에 내부 구조로도 가능함
내부 안에서 사설 ip를 또 부여. 그럼 거기서도 NAT가 발생할 수 있음
virtual lan
스위치를 내 의도대로 쪼개서 사용하는 것
한 개의 물리적 스위치로 여러개의 서브넷 구성이 가능함
즉, 스위치가 한개가 아니라 두개, 세개다 생각해도 무방. --> 같은 네트워크가 아니다
케이블은 결국 하나이기에, 그리고 모두 가상으로 나눠지기에 게이트웨이도 가상으로 나눠짐. sub 인터페이스와 main 인터페이스로 나뉨. main이 원래 라우터의 gw
vlan 설정 - 자세한 설명 수업 내용 참조
1. vlan을 생성
2. 인터페이스 모드를 설정
상행 포트 설정: 일반적으로 여러개의 vlan 지나감
하행 포트 설정: 각각의 vlan에 맞게 access
3. 라우터에서 vlan 설정 - 802.1q같은 encapsulation 방식들이 있음
vlan은 내부 통신 방식이나 구조는 너무 자세하게까지 알 필요는 없고, vlan tag라는 것이 있다 정도. 어떤 경로 흐름인지 정도만 인식
nat를 해주는 이유? 이런 것 처럼 각각 서비스를 왜 하는지? 그 목적을 알고있어야 함
가상의 네트워크가 있다? --> 가상의 라우터/스위치가 있다.
내가 물리적이든 가상이든 어떤 네트워크에 속해있다? --> 그 네트워크에 인터페이스(ex - NIC)를 가지고 있다.
브릿지? --> 현실 대역이다.
실제 공유기나 lan port에 연결되는 직통 연결이라고 보면 될 듯
스위치에 가상의 포트에 하나 더 꽂히는 느낌. 그림 참조
간단한 실습
httpd 정적 웹서버, 기본적인 centos7 및 리눅스 명령어
vmware - hostonly, bridged, nat 3개 타입 나눠서 실습 중
GNS와 연계하여 hostonly 서버 GW 생성 후 통신 가능하게 해보기...

다음주도 vmware로 가상환경 하려나... 클라우드 언제 하지...?
(일단 로컬부터 잘 하자)