조준희 (Cho, Junhee) ssaljalu@sparcs.kaist.ac.kr ssaljalu@gmail.com TCP/IP 조준희 (Cho, Junhee) ssaljalu@sparcs.kaist.ac.kr ssaljalu@gmail.com
Internet vs. Web “인터넷”이란? The Internet “웹”이란? World Wide Web, WWW 무엇이 다를까?
Internet 컴퓨터 사이의 물리적 네트워크. 랜(LAN) 선, 전화선 등의 케이블 혹은 위성으로 연결되어 있다. Note: Ethernet TCP/IP를 사용한다.
Internet Ⓒ inch.com
World Wide Web 웹 페이지(HTML 문서) 사이의 가상 네트워크. Hyperlink로 연결되어 있다. HTTP를 사용한다.
World Wide Web Ⓒ rickycodes.net
Protocol 프로토콜이란? 컴퓨터 간의 통신 규약. 규칙. 친구, 밥, 나 나 친구랑 밥 먹고 왔어.
TCP/IP Protocol Suite 인터넷을 통해서 통신하기 위해서, 데이터를 주고 받기 위해서 여러 프로토콜을 사용한다. TCP/IP Protocol Suite는 네가지 계층(layer)으로 분류된다.
Layers Application Layer HTTP, FTP, DNS, … Transfer Layer TCP, UDP, … Internet Layer IP (IPv4, IPv6), ICMP, IGMP, … Link Layer Ethernet, PPP, ISDN, …
Layers Ⓒ bobbyfiles.wordpress.com
Encapsulation 데이터를 전송하기에 앞서 순서대로 각 계층에서 데이터를 캡슐화한다. 캡슐화 과정에서 데이터를 전송하는데 필요한 정보들을 앞뒤에 추가한다. Header, Footer. 데이터를 전송받으면 캡슐화 과정을 역행하여 필요한 데이터를 꺼낸다.
Encapsulation 여자친구에게 선물을 보낸다. 1. 선물을 준비한다. 2. 선물을 상자에 넣는다. 3. 상자에 택배 송장을 부착한다. 4. 택배를 보낸다.
Decapsulation 여자친구에게 선물을 받는다. 1. 택배를 받는다. 2. 상자를 연다. 3. 선물을 꺼낸다. 4. 선물에 감동한다.
En/Decapsulation Ⓒ www.home-network-help.com
TCP/IP Connections Ⓒ wikipedia.org
OSI vs. TCP/IP Ⓒ isecure.textcube.com
OSI vs. TCP/IP Ⓒ vandaelematthias.be
Packet 데이터 전송 단위 어떤 상품을 수입하거나 수출할 때, 정해진 규격의 컨테이너에 담아서 배에 싣는다.
IP Address IP 주소로 각 컴퓨터를 구분한다. IP 주소로 데이터의 출발지와 목적지를 구분한다. IPv4 – 4 byte (32 bit) Address IPv6 – 6 byte (48 bit) Address IPv4 Depletion!
Vint Cerf Ⓒ Esquire
Internet Godfather Ⓒ Guardian
Google Chief Internet Evangelist Ⓒ itviewpoint.com
IPv4 Depletion Ⓒ Guardian
Interplanetary Internet Ⓒ irevolution.wordpress.com
Network Ⓒ osu.edu
Network Ⓒ networkingreviews.com
Network Settings
IP Address IP 주소는 네트워크 부분과 호스트 부분으로 나뉜다. IP 주소는 세가지 종류가 있다. Subnet Mask Gateway DNS Server
Classful Network
Classless Inter-Domain Routing Ⓒ wikipedia.org
IP Address vs. Postal Address Subnet Mask 255.255.255.0 Network 110.76.87 Host 32 Gateway 110.76.87.1 주소 대전광역시 유성구 구성동 한국과학기술원 갈리레이관 2114호 대전광역시 유성구 구성동 한국과학기술원 갈릴레이관 2114호 대전광역시 유성구 구성동 한국과학기술원 갈릴레이관 사감실
Broadcast Broadcast IP 주소로 보내지는 데이터는 해당 네트워크 안에 있는 모든 호스트로 재전송된다. Hub vs. Switch Sniffing Attack
MAC Address MAC 주소로 각 네트워크 장치를 구분한다.
Port 기차역에 있는 하나의 플랫폼에서 동시에 하나의 기차만 승객이나 화물을 싣고 내릴 수 있다. 기차역에는 여러 개의 플랫폼이 있어서 동시에 여러 대의 기차를 활용할 수 있다. TCP/IP에서 하나의 포트로 동시에 하나의 프로세스만 패킷을 주고 받을 수 있다. 여러 개의 포트로 동시에 여러 개의 프로세스가 패킷을 주고 받을 수 있다.
Routing Table 목적지에 따라 패킷을 보낼 경로를 저장한 목록 출발지에서 출발하여 목적지까지 도착하는 동안 여러 라우터를 거친다. 라우팅 테이블에서 다음 거점을 확인한다.
Routing Table Ⓒ cisco.com
Routing Table 목적지 서울특별시 노원구 월계동 현대아파트 한국과학기술원 우체국 대전광역시 유성구 우편집중국 서울특별시 노원구 우편집중국 서울특별시 노원구 월계1동 우체국 목적지 도착
/etc/hosts 자체 DNS 서버 호스트나 도메인을 IP 주소에 대응시킨다. root 계정으로만 수정 할 수 있다. 만약 그렇지 않다면?
/etc/hosts
/etc/hosts
/etc/hosts
/etc/hostname 호스트네임 목록
/etc/network/interface 네트워크 설정 IP Address Subnet Mask Gateway DNS Server root 계정으로만 수정 할 수 있다.
/etc/network/interface
/etc/init.d/networking /etc/init.d/networking [option] start stop restart force-reload
/etc/resolv.conf Resolver Configuration File domain – 속한 지역 도메인을 지정한다. search – 호스트 네임이 주어졌을 때, 어느 도메인에 속한 호스트인지 판단한다. nameserver – DNS 서버를 지정한다.
/etc/resolv.conf
$ ping ICMP ECHO_REQUEST를 보낸다. 해당 호스트와 네트워크로 연결되어 있는지 확인한다. -c count -i interval -I interface -W timeout
# hostname 호스트네임을 확인하거나 설정한다. -f: long host name -s: short host name -d: domain name -a: alias name
# hostname
# ifconfig 네트워크 설정을 확인하거나 설정할 수 있다. ifconfig ifconfig interface
# ifconfig
# ifconfig
$ traceroute 해당 호스트까지 네트워크 경로를 확인한다. -4: IPv4 -6: IPv6 -i device: 네트워크 장치 지정 -p port: 포트 지정
$ traceroute
$ netstat 포트 사용 현황을 확인한다. netstat -an
$ host 해당 호스트의 IP 주소를 알려준다.
$ host
$ nslookup 해당 호스트의 IP 주소를 알려준다.
$ nslookup
Thanks. Q&A