OSI 7계층 (Open System Interconnection) 상호 호환
- ISO에서 제안한 모델
ㄴ 인터넷 : 국가주도 개발 : TCP/IP
ㄴ 근거리 통신망 : 각 벤더별로 각자 개발 : FDDI Ethernet
- 표준 프로토콜을 사용해서 다양한 통신 시스템끼리 서로 통신할 수 있게 국제표준기구에서 만든 모델
이진수 데이터(디지털) > 시그널 변환 > 유/무선 > 오류제어 + 암호화
통신 시스템을 7개의 추상적인 계층으로 나누었다
네트워크, 시스템 상의 이상 발생 시에 문제를 분석하고 원인을 찾을 때 모델 상의 어느 계층의 문제인지 범위를 좁힐 수 있어 시간, 노력의 낭비를 줄일 수 있다
osi 7계층 (네이버박스의 03 Network_Hacking(최종본).pdf 의 30~31 페이지 확인)
계층 | 이름 | 설명 |
7계층 | 응용 | 사용자 (개발자, 클라이언트) 서버 = 서비스(http, smtp, ftp) => 원본(Source) |
6계층 | 표현 | 코드(ASCII) JPEG MPEG + 암호화(인캡슐레이션) |
5계층 | 세션 | port number : 상위의 서비스 종류를 식별하기 위한 번호 (80, 20, 21) |
4계층 | 전송 | TCP 상위로부터 전달받은 원본을 일정 크기로 분할 => 세그먼트 |
3계층 | 네트워크 | 헤더(출발지, 목적지 IP 주소) + 세그먼트 => 패킷 |
2계층 | 데이터링크 | 헤더(MAC 주소) + 패킷 + CRC(체크썸) => 프레임 |
1계층 | 물리 | 비트 스트림, 시그널 => 케이블 |
5~7계층은 하나로 묶어서 취급하는 경우가 많다
네이버박스 > ARP 정리된 거 : 4가지 전부 다운
전송에 관한 apt파일로서
ip와 맥주소가 포함된 형식이 전송되는 내용을 확인 가능
◆ ARP 정리
- Router는 서로다른 네트워크를 연결하는 장비
Broadcast Domain을 분할한다
- Hub, Switch는 서로 다른 장비를 같은 네트워크로 연결한다
- Hub는 Collision Domain을 분할할 수 없으며,
Switch는 Collision Domain을 분할할 수 있다(Broadcast는 일반적으로 분할 불가함)
- Switch는 프레임에 Tag를 부착하여 놀리적인 가상의 개념으로 Broadcast Domain을 분할하는 기술이 있다
◆ VLAN (Virtual LAN : 가상 랜)
- 가상화는 물리적으로 한 대인 것을 마치 여러 대인 것처럼 해주는 기술
- 한 대의 스위치를 여러 대와 같이 사용할 수 있으며, 여러개의 네트워크 정보를 한개의 포트로 전송할 수 있다
ex) 회사는 네트워크 주소를 3개를 사용중이다
본관 : 라우터에는 3개의 이더넷 인터페이스가 있어야 한다 즉, 각각의 스위치가 연결되어야 한다
별관 : 3개의 네트워크 주소가 모두 필요하다 => 스위치도 3개가 필요
★총 스위치가 6개가 필요하나 VLAN 사용 시
라우터는 스위치와 1개의 물리적인 인터페이스만을 사용하여 3개의 다른 네트워크 주소를 전송할 수 있다
VLAN을 사용하면 하나의 링크로 여러개의 네트워크 주소를 보낼 수 있다
각 사무실의 스위치에 VLAN을 설정하고 두 개의 스위치를 서로 Trunking 설정하여 한자의 포트만 사용하려는 사무실의 VLAN으로 설정하면 된다
- VLAN은 번호로 구분한다
- VLAN 은 한 대의 스위치를 여러 개의 네트워크로 나누기 위해 사용 하지만 VLAN으로 구분된 장비들은 L3장비를 통해야만 통신이 가능하다
- VLAN 설정은 포트별로 해야한다
- 설정 전 디폴트로 VLAN 1에 속해 있다
★ 하나의 포트가 하나의 VLAN 에만 속한 경우를 [Access mode]라고 한다
, 즉 한 포트가 자신이 속한 VLAN의 프레임만을 전송할 수 있다
★ 스위치와 스위치가 하나의 포트로 연결되어 있는 경우는 하나의 포트에 여러개의 VLAN 프레임이 모두 다녀야 각 VLAN 별로 정상통신이 가능하다
이 경우 하나의 포트에 열러개의 VLAN이 다니는 경우를 [Trunk mode]라고 한다
[설정해보기]
◆ VLAN 설정
- 1~1005 : normal VLAN ( 1~1001 이더넷 / 1002~1005 토큰링, FDDI )
◇ Access port 설정
- 각 인터페이스를 생성한 VLAN에 할당한다
ㄴ L3장비를 거치지 않을 경우 같은 VLAN에 할당된 인터페이스에 접속한 장비들 사이에서만 통신이 가능함
fig)# interface fastEthernet 0/1 // 생성한 VLAN에 소속될 인터페이스 에서 설정
fig-if)# switchport mode access // 현재의 인터페이스를 access 포트로 설정
fig-if)# switchport access vlan 10 // 포트가 속할 VLAN 번호 지정
◇ Trunking 설정
- 여러개의 vlan을 실어나르는 것
- 스위치에 여러개의 vlan이 있는 경우 각 vlan별로 각각의 링크를 만들어야 하지만
그럴경우 너무 많은 링크가 필요함
ㄴ 하나의 포트에 여러개의 vlan이 다니는 경우를 [Trunk mode]라고 한다
☆방식
ISL 시스코 장비 전용
IEEE802.1Q 트렁킹 표준 프로토콜 // 현재 이방법 사용
fig-if)# switchport mode trunk // 다른 스위치와 연결된 인터페이스 에서 입력
ㄴ 해당 명령어까지 입력해야 같은 네트워크 끼리 ping 이 가능해진다
fig-if)# switchport trunk encapsulation dot 1q
fig-if)# switchport trunk allowed vlan 10, 20
◇ 스위치 초기화
# delete vlan.dat // vlan 정보 삭제
# erase startup-config
# reload // 재부팅
다른 네트워크 끼리 ping 하기위해 라우터가 필요함 (int f0/0 에 no sh 한 후)
형식으로 하며 PC의 게이트웨이를 라우터의 .254로 설정 시 서로 ping 이 되는 것을 확인 가능
[총내용 요약]
[응용 연습 해보기]
◆ DHCP (Dynamic Host Configuration Protocol)
- PC 가 네트워크에 참여하기 위해서는 IP주소가 필수적
- PC 가 지정된 주소를 가지는 것이 아니라 부팅 시에 DHCP서버로부터 동적(자동)으로 IP주소를 받아오는 방식
ㄴ서버의 경우 자동이 아닌 정적(수동)으로 설정해야 한다
- 자신이 사용할 IP 주소 / 서브넷마스크 / 기본 게이트웨이 / DNS 주소
- 주소 배정을 자동으로 할 시 IP관리가 편해짐
- Lease(임대) 서비스이기에 사용기간을 정할 수 있다
◇ 동작
Discover : 클라이언트 -> 서버
Offer : 서버 -> 클라이언트
Request : 클라이언트 -> 서버
Ack : 서버 -> 클라이언트
ㄴ의 4단계로 구성됨
◇ 설정
R(config)# ip dhcp pool <name> // dhcp가 사용할 주소의 영역의 이름 지정
R(dhcp-config)# network 192.168.10.0 255.255.255.0 // 할당된 주소 대역
R(dhcp-config)# default-router 192.168.10.254 // 기본 게이트웨이
R(dhcp-config)# dns-server 192.168.10.100 // dns 주소
R(dhcp-config)# domain-name busanit.net // 도메인 이름 지정
R(dhcp-config)# lease 7 // 임대기간, days, infinite
R(config)# ip dhcp exclued-address 192.168.10.254 // 제외할 주소(서버, 게이트웨이) + 192.168.10.100 도 추가
R# show ip dhcp binding // 할당된 내역 확인
강사님께서 만든 dns-dhcp 패킷트레이서
[만들어보기]
적혀있는 내용대로 제작하면서 내용확인하기 (오타있으니 주의하기)
◆ 라우터 보안 (Access List)
- 방화벽(Access Control List) : 특정 네트워크의 접근여부를 허용 할지 말지를 결정하는 리스트 (필터링)
- 라우터에서 설정한다고 하여 L3까지가 아닌 응용계층 일부분까지 관리
- 완벽하게 막을 수 없기 때문에 전문 방화벽 장비 사용
- ACL은 크게 numbered 와 named 로 구분되며, 각각 standard 와 extended 가 있다
ㄴ Standard 표준 ACL 1 ~ 99 출발지 IP
Extended 확장 ACL 100 ~ 199 출발지, 목적지, 프로토콜, 포트번호
◇ ACL 기본 규칙
① ACL은 맨 윗줄부터 아래로 순차적으로 수행되며, 그렇기에 좁은 범위 설정을 먼저 해야 한다
ㄴ좁은범위설정을 하지 않으면 모든 패킷이 허용됨 = 전혀 필터링 되지 않음
R(config)# access-list 1 permit any // 1번인 acl을 만들고 모든범위를 통과시킨다
R(config)# access-list 1 deny 125.101.2.0 0.0.0.255 // 해당 네트워크 주소(와일드카드 마스크)는 거부하겠다
ㄴ이런경우 먼저 통과되었기 때문에 적용되지 않는다
② 맨 마지막 행(줄) 에는 deny any 가 생략된다
R(config)# access-list 2 deny 125.101.2.0 0.0.0.255 //
③ 순서대로 입력되고 수행되기 때문에 중간 삽입, 수정, 삭제도 불가능하기에
바로 명령을 수행하는 것이 아니라 별도의 텍스트로 작성 후 검증을 해야한다 ☆
④ ACL은 해당하는 인터페이스에 ACL이 정의되어야 한다
⑤ Inbound / Outbound
R(config)# access-list <list 숫자> {permit | deny} {<출발지주소> <와일드카드마스크> | any}
R(config-if)# ip access-group <list 숫자> <in | out> // 해당 네트워크 주소가 전송될 인터페이스
★반드시 ACL은 목적지 라우터에서 설정해야 한다.
문제) 출발지가 210.100.8.0 /24 인 패킷이 라우터에 들어오지 못하게 설정하시오
R(config)# access-list 1 deny 210.100.8.0 0.0.0.255
R(config)# access-list 1 permit any
R(config-if)# ip access-group 1 in // int s0/0
문제) 출발지가 190.150.82.0 /24 인 패킷만 라우터에 들어올 수 있게 설정하시오
R(config)# access-list 12 permit 190.150.82.0 0.0.0.255
R(config-if)# ip access-group 12 in // int s0/0
문제) 출발지가 51.100.92.8 /32 인 패킷이 외부로 나가지 못하게 설정하시오
R(config)# access-list 7 deny 51.100.92.8 0.0.0.0
R(config)# access-list 7 permit any
R(config-if)# ip access-group 7 out // int s0/0
[ACL 기초 연습]
[연습2]
ip 설정은 기본
'AWS 교육 > Cloud-Python (수)' 카테고리의 다른 글
241106_문자열, 함수 (0) | 2024.11.06 |
---|---|
241030_Python, VSCode (0) | 2024.10.30 |
241023_확장 ACL, Named ACL(기본, 확장), Windows Server (0) | 2024.10.23 |
241002_EIGRP 기본 이론, OSPF 기초 이론 (0) | 2024.10.02 |
240911_라우팅 이론,서브넷팅 (0) | 2024.09.11 |