패킷분석을 위한 네트워크 장비 특징
ip
subnet
gateway
각 기능 구분
A B 의 switch-, gateway 특징 등
논리적 주소 (3계층 주소)
- IP address: network id + host id >> 서브넷 마스크로 알 수 있음
a는 192.168.1.0의 10번째 pc
c는 192.168.5.0의 10번째 pc
*서브넷 마스크 필요 : 네트워크 아이디 호스트아이디 구분
6p: 네트워크 아이디로 외부망과 내부망을 구분
물리적 주소 (2계층 주소)
- 우리가 사용하는 카드는 이더넷 카드
- 물리적 주소 , mac address
ipconfig
ipconfig /all
물리적 주소 : 12자리 / 16진수 체계
6자리: 제조회사 번호
나머지 6자리: 몇번째 일련번호
MAC 주소 관리 중요
FQDN (7계층 주소, 문자 주소)
- host name + domain name (www+test.com)
*개인블로그는 프로토콜명을 사용하지 않음.
클라이언트가 존재해야 서버가 존재함
클라이언트가 서버 호출
mac adr, ip adr, 문자주소 세 가지로 호출 가능하다.
ip, mac adr : 필수
문자주소: 선택이지만 클라이언트 유입에 중요
DNS: 문자주소 기반 ip를 조회해주는 역할
ARP: ip를 기반으로 해서 mac주소를 조회해주는 역할
*문자주소가 맥주소를 찾아주는 것은 없음
*맥 주소를 기반으로해서 ip를 알아내는 프로토콜 (RARP, 역 ARP)
*DNS는 역 DNS
>> 실제 dns와 arp를 사용하는 공격이 많음
포트번호 (4계층 주소)
- 1 - 65535
dynamic port: c p, 동적
wellknown port: s p, 정적
registered port:
2000.10.10.10.: 5000 >> 5000번으로 클라이언트에 공지 해야됨
http://200.10.10.10
http://200.10.10.10:5000
ex) 192.168.1.10:21
- 21은 포트번호
- 192.168.1.10 은 동 21은 호로 비유
*크롬에서 각각 다른 네트워크(google, naver, daum... ) 띄웠을 때, 각 다른 프로그램이 실행되고 있음
전송모드
unicast 1:1
broadcast 1:m (불특정다수/ 송, 수 )
multicast 1:n(특정 다수)
* 패킷을 보고 어떤 패킷인지 구분
L2, L3, L4 총 6개 주소 기록 >> unicast 전송모드
mac주소: 송, 수
ex)
크롬으로 열면 송신지 포트가 정해짐.
어떤 애플리케이션냐에 따라 송수신포트 결정
*수신지 ip 알려주는 역할은 DNS
* ip를 기반으로 mac주소 ARP
브로드캐스트 주소
- 가상 주소
- 시스템(운영체제)운영 또는 프로토콜 운영/ 특정 애플리케이션 운영을 위해 사용
- 브로드캐스트 ip: 255.2555.255.255 (all)
- 브로드 맥주소: FFFF.FFFF.FFFF
*운영체제 설치시에 할당 됨
255.255.255.255
FFFF.FFFF.FFFF
- 다이렉트, 로컬
- dns와 arp도움 없이 자동변환
DHCP DATA : 브로드 캐스트 패킷
>>>>
****수신지 주소로 확인 >>브로드캐스트
멀티캐스트 주소
- 가상의 주소
- 시스템(운영체제)운영 또는 특정 프로토콜 운영/ 특정 애플리케이션 운영을 위해 사용
- 운영체제 설치 시 할당
- dns와 arp도움 없이 자동변환
- ip로 지정
- w의 시작주소가 224-239
- mmac주소 : 0100.5E
- 멀티캐스트 아이피가 >> 이더넷 주소로 변환
* 25비트가 일치해야함, 24비트 01005e, 멀티캐스트가 아닐 수 도 있다. 25비트 일 때 1
*멀티캐스트는 수신 ip로 구분
*브로드캐스트는 수신지 mac으로 FFFF.FFFF,FFFF
다이렉트 브로드캐스트 : 망 밖으로
ARP
- ip로 mac주소 변환
- arp request패킷 : 브로드캐스트 방식, 알기 위함
- arp reply 패킷: 유니캐스트 방식,
*캐시에 저장됨. 효율
arp -a
캐시테이블 : ipconfig /displaydns
ip : mac
계층별 장비
- 스위치, 라우터, 허브
포워딩 : 유니캐스트방식
플러딩 : 브로드캐스트 형태
스위치
- 2계층 장비
- 경로 DB > mac 주소 테이블
- 데이터 전송 방법: 포워딩, 플러딩
목적지 정보가 없는 경우 플러딩
목적지 정보가 있는 경우 포워딩
경로 DB에는 브로드캐스트/멀티캐스트 주소를 등록하지 않는다.
- 스위치는 플러딩 방식으로 전송한다.
게이트웨이: 망과 망을 연결시켜주는 중계장비 / 라우터, 멀티레이어 스위치, 게이트웨이(방화벽)
- 내부망을 써야함.
- 3계층 이상의 장비: 라우터
라우터
- 3계층 장비
- 경로 DB: 라우팅 테이블
- 포워딩 방식만으로 라우팅테이블에 목적지 정보가 있으면
- 라우팅테이블에 목적지 정보가 없으면 폐기한다.
*경로 DB에는 브로드캐스트/멀티캐스트 주소를 등록하지 않는다.
라우터가 브로드캐스트를 받으면 폐기
허브
- 1계층
- 경로 db가 없음
- 플러딩 방식으로 전송
허브: 플러딩
스위치: 플러딩, 포워딩
라우터: 포워딩
Media Translation
- 3계층 이상의 장비에서 처리
3계층 주소는 바뀌지 않고 2계층 주소만 바뀐다.
- L3 : ip address(산업표준주소)
- L2 : mac address(비산업표준주소)
LAN >>2계층
*ip와 mac이 일치할 필요는 없이 송수신이 됨.
33p
- 송수신 아이피를 보고 외부망의 도움을 받아야된다고 판단하고
- 맥주소는 알 수 없다.
- 게이트웨이의 도움을 받아야함.
- 게이트웨이의 맥 주소
- 스위치에서 1, 2플러딩 방식으로
*라우팅테이블 참고해서 없을경우 드랍된 거 확인
pc_1 에서 스위치A로 arp를 보내면 플러딩 하게되고 라우터로 보내면 폐기하게된다.
*arp 는 망 밖으로 못나감.
트래픽 흐름
- test.com에 접속 하려고 함.
- 서버는 테스트 사이트의 맥 주소를 모르는 상황
- 송,수 포트는 데이터에 영향을 받아서 상관 없음
- 수신지 ip를 체크하는 방법 >>
내부망 트래픽 흐름
1단계
- dns캐시 조회 ( ipconfig/ displaydns)
- hosts.txt파일 조회 ( hosts파일)
- dns서버 이용
*내 컴퓨터에 조회하고 없으면 외부 (dns) 조회
>>
- 송 수신지 ip 동일
- 내부망이라고 판단
* 게이트웨이 쓸 이유가 없음
수신지 mac주소 조회
-arp 캐쉬 조회: arp -a
- 없으면 arp request/reply
>>>> * 운영 체제(커널)의 기능 : 하드디스크관리, 메모리 관리, 스케쥴링, 네트워크관리
트래픽 흐름 외부망
- 외부망일 경우 게이트웨이의 맥 주소 조회
OSI 참조모델
- Open system : 개방형 시스템
APSTNDP
application , presentation, session : 상위 3계층 , 소프트웨어 기능
transport 중계 계층, 미들웨어 기능 , 서버
network, data, physical : 하위 3계층, 하드웨어 기능
*관제는 전반적인 트랙을 알아야 함
공격유형
- 시스템 공격 : 커널을 공격해서 권한 탈취
- 애플리케이션 공격 : 각 서버의 취약점 >> 5,6,7 계층
- 네트워크 공격 : 네트워크 취약점 >>1,2,3 계층
7계층 Application
- 송신자
- 크롬, 파이어폭스, 마이크로엣지 >> UI
- UI를 통해 데이터 생성됨
6계층 Presentation
- 코드 변환(인코딩) : 이진화 > ASCII, UNICODE, BCD
- 압축 : 7계층에서 생성된 데이터의 크기를 줄이는 작업 > png, bmp, zip
- 암호화: 보안 > RSA, DES
5계층 Session
- 심사
- 양단간에 서비스 개시(인증 작업), 유지(지속적 인증 작업, 서비스 유지), 해지하는 작업(세션인증값 만료)
*지속적인 인증 : 본인이 있음을 확인 하는 과정
* 5,6,7 >> 소프트웨어 처리
4계층 Transport
- 결정
- TCP, UDP,
3way handshake : 서비스 가능 여부 체크
- 3way handkshake가 연결되면 가상회선 설정(세션수립)
- end to end 양단 간에 가산회선 설정, 유지하고 해지 해줌
*가상회선 설정은 서버, 서비스 정상적인 운영과 제공
3계층 Network Layer
- 최적 경로 결정(routing)
2계층 DATA Link Layer
- 스위칭 (포워딩, 전달)
- 오류제어:
*데이터를 받은 쪽에서 확인 해야함.
- 송신지 : 원본데이터+ 오류검출코드
- 수신지 : 수신된 오류 검출코드를 이용해서 원본 데이터의 무결성 점검
- 매체 접근 제어 기능:
LAN :하나의 장비를 여러개의 호스트들이 공유해서 사용
다수의 pc들이 충돌 문제 > 전송 지연
>> 이런 문제로 (공유)매체접근제어 기술이 필요하다.
> CSMA/CD => ethernet card > ethernet lan
각각 나눠서 기능을 넣을시
- LLC - 오류 검출
- MAC - 매체접근 제어
*2계층 까지 가상 계층
1계층 물리적 단계 Physical
- 전기적, 기계적, 기능적, 절차적인 수단 제공
- 하드웨어 장비, 핀 하나하나의 기능
- 물리적인 전송을 담당하는 층
공통 기능
캡슐화 & payload
- 통신에 필요한 제어정보: header와 trailer
header: 원본 데이터 앞에 붙는 제어정보
trailer: 원본데이터 뒤에 붙는 제어정보
- 캡슐화 후 2진법
- 수신자 측에 전달되면 역 캡슐화 진행 >> 헤더 정보 검증하고 제거하고.. 검증 제거 반복 > 오리지널데이터만 전달 되게
실습
github > NetLAB > 파일 다운로드 > labFile안에 packettracer설치> 프로그램 창닫음
> router 파일 > Basic_01
- option > preferences > device labels 체크 풂, port labels 체크 > font >12,13 정도
- ping test : pc 더블클릭 >> desktop>> command prompt >>ipconfig /all (ip 복사 ) >>arp -a
1.10 pc에서 arp -a >> ping 192.168.1.20 >>>arp -a 다시 입력하면 1.20 맥 주소 ae1d확인
- 192.168.5.10 ping 입력시 100% 손실 >> 죽었다고 볼수없음. unreachable
arp -a >> 5.10은 외부망 >>게이트웨이의 맥 주소 필요 판단 >>1.254 확인(게이트웨이 맥 주소)
- 192.168.3.2 >> request timed out > 제한된 시간 안에 reply가 오지 않음. (안 올 수도, 시간 이후에 올 수도)
- mac address
- routing table
ping
- echo -request
- echo -reply
*가는 패킷 오는 패킷 따로 있음
스위치
CLI >> en > 엔터 >> sh mac-address-table
pc2 에서 >> 1.10 ping후에 스위치에서 mac-address-table 확인하면 추가된 것 확인
- 스위치 스스로 mac주소 관리 (스위치를 통과하는 데이터의 송신지 mac주소 기반으로)
- 송신지 주소를 보고 스위치에서 알아서 관리 한다.
*arp 캐시 테이블 = ip : mac
mac 주소 테이블 = mac주소: 출구번호
dns 캐시테이블 = 문자주소: ip주소
라우터 테이블= 네트워크 :출구번호
스위치 = 목적지: 출구번호
라우터
cli >> en >> show ip route
*5.10 핑을 보냈는데 게이트웨이 주소가 보여짐 (5.0에 대한 정보가 없음)
- 3.0을 보고 망 밖으로 나간 것 유추할 수 있음
정리
네트워크 장비 특징
물리적 주소 -2계층>> mac주소
논리적 주소 -3계층
FQDN, 문자주소 -7계층
포트번호 -4계층
전송모드
- 유니캐스트 전송모드
- 브로드캐스트 전송모드
- 멀티캐스트 전송모드
*ipconfig /displaydns , arp -a
- 트래픽 내 외부망
- osi 7계층
'수업' 카테고리의 다른 글
11/15 (0) | 2023.11.15 |
---|---|
11/14: TCP/IP (0) | 2023.11.13 |
11/10 : 애플리케이션 보안 (0) | 2023.11.10 |
11/9 : Kali (0) | 2023.11.09 |
11/8 : Kali (0) | 2023.11.08 |