기초
TCP/IP
- 4계층 Application Layer :
- (TCP): FTP HTTP SMTP (UDP): DNS TFTP
- 단위 : Stream, Messege
- OSI 7계층의 세션 계층, 표현 계층, 응용 계층에 해당한다.TCP/UDP 기반의 응용 프로그램을 구현할 때 사용
- 3계층 Transport Layer :
- TCP / UDP
- 단위 : Segment
- 식별 : Port Number
- OSI 7계층의 전송 계층에 해당한다.통신 노드 간의 연결을 제어하고, 신뢰성 있는 데이터 전송을 담당
- 2계층 Network Layer :
- IP ARP RARP
- 단위 : Packet
- 식별 : IP Address
- v4: 255.255.255.255(32bit)
- Classful : 클래스기반(A Class,B Class,C Class,D Class, E Class) (~1992)
- Classless : 클래스를 무시하고 서스넷마스크(/24)를 사용하는 방식 (1992~현재)
- v6: 1050:0:0:0:5:600:300c:326b(128bit)
- OSI 7계층의 네트워크 계층에 해당한다. 통신 노드 간의 IP패킷을 전송하는 기능과 라우팅 기능을 담당
- 1계층 Network Access Layer or Network Interface Layer
(Data Link Layer, Physical Layer) :
- Internet, LAN AND WAN, Ethernet
- 단위 : Frame
- 식별 : MAC Address
- 53-4C-A3-95-77-99 (48bit,6byte)
- 24bit: 제조사 식별코드
- 24bit: 제조사 일련번호
- OSI 7계층의 물리계층과 데이터 링크 계층에 해당한다.
- Frame 전송 방식의 종류
- Wi-Fi, Ethernet, Token Ring, FDDI -> LAN (근거리 통신)
- ATM, PPP, HDLC, Frame-Relay 등등 -> WAN (원거리 통신)
- 형태
Frame Header/IP Header/ TCP header /data / FCS
주소
* IP주소는 IANA에서 관리하고 있음
- ICANN의 산하 IANA (인터넷 주소관리 위원회)는 IPv4, IPv6, Port번호, AS번호(기관식별자)를 관리
Port Number
- 컴퓨터 내부의 서비스를 식별하기 위해서 사용 (=Application 식별)
- 65536 (0~65535) > 16bit(2의16승)
- System Port(Well-Known Port) : 1~1023번까지
- 범용 서비스를 위한 포트 ex) http(80), FTP(21), SSH(22), Telnet(23), SMTP(25), https(443)
- 용도를 미리 지정해 놓으면 물어보지 않아도 됨
- Registered Port : 1024~49151
- 사설 Application을 개발하는 경우 사용하는 포트
- Application을 개발하면, 다른 기존의 Application과 중복되지 않는 번호를 사용해야 함
- 등록을 하고 사용하면 중복을 막을 수 있음
ex) MySQL : 3306, Battlenet : 6112
- Dynamic port : 49152~65535
- 주로 클라이언트용 프로그램들이 사용하는 주소로서 Web Browser 등이 있음 외부 주소의 서버 포트가 443 또는 80이면 로컬 주소에서 사용하는 포트는 '웹 브라우저'일 가능성이 높음
- 사용에 제한이 없음
※ Port Scanning
어떤 포트가 열려있다는 것은 어떤 서비스가 실행중임을 알 수 있기 때문에 어떤 포트가 열려있는 지 조사하는 것
Wireshark
- 가장 많이 사용하는 오픈소스로서 패킷 분석 도구이다. Ethereal에서 상표권문제로 Wireshark로 이름변경
- USB트래픽을 분석도 가능, 다양한 PAN(Personal Area Network: Bluetooth, Zigbee, RFID등)도 분석 가능
- 필터 사용 3가지


