36
제 4 제 제제제 1

제 4 장 인터넷

Embed Size (px)

DESCRIPTION

제 4 장 인터넷. 4.1 네트워크 구성. LAN(Local Area Network). LAN 근거리 통신망으로 집 , 사무실 , 학교 등의 건물과 같이 가까운 지역을 한데 묶는 컴퓨터 네트워크 Serial port connection 가장 단순한 LAN 이더넷 (Ethernet) 제록스 PARC 에서 개발된 LAN 구현 방법으로 현재 가장 일반적으로 사용. Ethernet cable. Ethernet card. serial connection. Ethernet cable. - PowerPoint PPT Presentation

Citation preview

Page 1: 제 4 장 인터넷

제 4 장 인터넷

1

Page 2: 제 4 장 인터넷

4.1 네트워크 구성

2

Page 3: 제 4 장 인터넷

LAN(Local Area Network) LAN

근거리 통신망으로 집 , 사무실 , 학교 등의 건물과 같이 가까운 지역을 한데 묶는 컴퓨터 네트워크

Serial port connection 가장 단순한 LAN

이더넷 (Ethernet) 제록스 PARC 에서 개발된 LAN 구현 방법으로 현재 가장 일반적으로 사용

3

Ethernet cable

Ethernet card

serial con-nection

Page 4: 제 4 장 인터넷

같은 종류의 네트워크를 두 개 이상 연결하는 장치 데이터 패킷의 목적지를 추출하여 그 경로에 따라 데이터 패킷을 다음 장치로 보내주는 장치 ( 국내공항 ) 공유기 혹은 스위치라고도 함

라우터 (router)

4

Ethernet cable

Ethernet cable

Ethernet cable

Ethernet cable

Router

Page 5: 제 4 장 인터넷

프로토콜 변환기를 포함하는 일종의 고용량 라우터로 서로 다른 종류의 LAN 을 인터넷에 연결하는 컴퓨터나 장치 ( 국제공항 )

무선 액세스 포인트 (wireless access point, WAP) 네트워크에서 와이파이 , 블루투스 등을 이용하여 컴퓨터 / 프린터 등의 무선 장치들을 유선망에 연결할 수 있게 하는 장치

게이트웨이 (Gateway)

5

XNS(Xerox Network Sys-

tem) LAN

Ethernet LAN

AppleTalk

LANEthernet

LAN

Gateway

Gateway

Page 6: 제 4 장 인터넷

4.2 인터넷

6

Page 7: 제 4 장 인터넷

인터넷 (Internet)

인터넷 전세계 컴퓨터가 서로 연결되어 TCP/IP 프로토콜을 이용해

정보를 주고받는 공개 컴퓨터 통신망

프로토콜 서로 다른 기종의 컴퓨터 사이에 어떤 자료를 , 어떤 방식으로 ,

언제 주고 언제 받을지 등을 정해놓은 규약 간단히 통신을 하기 위한 규약 ( 주소지정 방식 및 전송 방식 ) ( 예 ) TCP/IP

• TCP(Transport Control Protocol)• IP(Internet Protocol)• 주소지정 방식 : IP 번호 + 포트 번호• 전송방식 : TCP/IP 또는 UDP/IP

7

Page 8: 제 4 장 인터넷

TCP/IP 프로토콜 IP(Internet Protocol)

호스트의 주소지정과 패킷 분할 및 조립 기능에 대한 규약 인터넷 상의 각 컴퓨터는 자신의 IP 주소를 갖는다 IP 주소는 네트워크에서 장치들이 서로를 인식하고 통신을 하기 위해서

사용하는 주소 각 호스트의 모든 서비스는 고유한 포트 번호를 가짐

• 포트 번호 확인은 $ cat /etc/services

TCP(Transport Control Protocol) IP 위에서 동작하는 프로토콜로 , 데이터의 전달을 보증하고 보낸 순서대로 받게 해준다 ( 등기우편 )

UDP(User Datagram Protocol) IP 위에서 동작하는 프로토콜로 , 단순한 전송 모델로 데이터의 전달을 전혀 보증하지 않는다 ( 일반우편 )

8

Page 9: 제 4 장 인터넷

9

OSI 7 Layers & Internet protocol suite

OSI 7 Layers Model

Layer 7 Application

Layer 6 Presentation

Layer 5 Session

Layer 4 Transport

Layer 3 Network

Layer 2 Data Link

Layer 1 Physical

* OSI : Open System Intercon-nection

Application

TCP UDP

IPv4, IPv6

Device Driverand

Hardware

Internet protocol suite

sock-ets

Page 10: 제 4 장 인터넷

10

인터넷에서의 데이터 흐름

Transport

포장 벗겨 위로 전달

Applica-tion

Network

LinkNetwork

Link

Network

Link

Applica-tion

Transport

Network

Link

도착주소 (IP) 전달

세그먼트 분할+ 포장 +도착주소

중간주소 붙여 포장( 도착주소 or라우터주소 )

중간주소를 lo-cal network 주소로 변환

포장 벗겨 도착주소 확인 후 아니면 다시 포장 + 새중간주소 (옆의 다른 라우터 주소 )

메시지 재구성

포장 벗겨 도착주소 확인 맞으면 위로 전달

포장 벗겨 위로 전달

Net-work 가 알고있다(rout-ing ta-ble 유지 )

Page 11: 제 4 장 인터넷

연결형 소켓 (connection oriented protocol : TCP(Transport Control pro-tocol))

11

연결형 시스템 호출 TCP/IP

서버 (server) 클라이언트 (client)

클라이언트로부터 연결이 올 때까지 대기

프로세스에 요청

read( )

bind( )

listen( )

ac-cept( )

socket( )

write( )

socket( )

connect( )

write( )

read( )

Data 응답

Data 요청

연결요청

연결승인 (SYN,ACK)

승인 (ACK)

승인 (ACK)

Page 12: 제 4 장 인터넷

비연결형 소켓 (connectionless protocol : UDP(User Datagram Pro-tocol))

blocks until data received from a client data(request) process request data(reply) 12

비연결형 소켓 시스템 호출 UDP/IP

socket()

write()

bind()

socket()

read()

sendto()

recvfrom()

클라이언트 (client)

서버 (server)

Page 13: 제 4 장 인터넷

13

인터넷 주소 IP Address vs. Symbolic Address vs. Physical Hardware Ad-dress IP Address

• 8 bit 4 fields = 32 bits ( 예 ) 117.16.244.59

• Class A, B, C, D

• Domain Name = Symbolic Address ( 예 ) csblade.incheon.ac.kr

Symbolic Address• com (회사 ), edu(교육기관 ), gov(정부 ), org(비영리기관 ), mil(군

용 ), XX(2자리 국가코드 )

Physical Hardware Address = MAC(media access control) Address = Ethernet hardware address(EHA)

$ ifconfig -a (Linux) 또는 $ ipconfig -all (Windows)

$ /sbin/arp -a

• 6-byte(8비트 ) 수치• 콜론으로 분리된 16진수 (예 ) 20:81:0a:10:c4:93 ( 처음 두 octet은

제작사 코드 )

Page 14: 제 4 장 인터넷

호스트명 (hostname) 인터넷에 연결된 컴퓨터에게 부여되는 고유한 이름 호스트명은 보통 사람이 읽고 이해할 수 있는 이름 도메인 이름 (domain name) 이라고도 한다 $ /usr/bin/nslookup 호스트 | IP 주소

호스트명 IP 주소

www.incheon.ac.kr

117.16.191.1

isis.incheon.ac.kr 117.16.191.

multi.incheon.ac.kr

csmail.incheon.ac.kr

18.62.1.6

128.32.244.172

171.64.64.64

www.google.com14

Page 15: 제 4 장 인터넷

DNS(Domain Name System) 호스트명을 IP 주소로 번역하는 서비스 DNS는 마치 전화번호부와 같은 역할 nslookup(name server lookup) 명령어

도메인 이름 시스템 (domain name system) 서버에 호스트명 질의 관련 파일 /etc/resolv.conf

$ /usr/bin/nslookup www.incheon.ac.kr

dig(DNS lookup utility) 명령어$ /usr/bin/dig isis.incheon.ac.kr

로그인한 사용자 정보$ finger 사용자 ( $ yum –y install finger* )

사용자가 언제 어디서 로그인 했는지 등 사용자에 대한 자세한 정보(.project .plan)보여준다

$ w 사용자

현재 로그인한 사용자들이 실행하고 있는 작업의 내용을 보여 준다

$ last

로그인 했던 사용자들의 로그인, 로그아웃 시간 기록을 보여 준다15

Page 16: 제 4 장 인터넷

4.3 사용자 통신

16

Page 17: 제 4 장 인터넷

메시지 보내기 : write

wrtie 명령어를 이용하여 메시지를 보낼 수 있다 . $ write 사용자명 [ 단말기명 ]$ write brain$ write brain pts7

wall(write all) 명령어 로그인된 모든 사용자에게 메시지를 보냄 시스템 셧다운과 같은 긴급한 메시지를 전달할 때 사용됨$ wall [ 파일 ]

메시지 허용여부$ mesg [y|n]

17

Page 18: 제 4 장 인터넷

4.4 파일 전송

18

Page 19: 제 4 장 인터넷

ftp

파일 전송 프로토콜 (File Transfer Protocol, FTP) 의 약자

FTP 서버와 클라이언트 사이의 파일 전송을 위한 서비스 주로 파일을 업로드 하거나 다운로드 하기 위하여 사용 ftp 혹은 sftp 명령어를 이용하여 파일 전송

$ ftp [ 호스트명 ]$ sftp [ 호스트명 ]

19

Page 20: 제 4 장 인터넷

FTP(File Transfer Protocol)

※ 윈도우즈에서 cmd 실행하여 MSDOS command 창에서$ ftp [ 호스트명 ]$ ftp 117.16.244.171Connected to 117.16.244.171

(117.16.244.171).220 localhost FTP server ready.Name (117.16.244.171:mysung): mysung331 Password required for mysung.Password:230 User mysung logged in.Remote system type is UNIX.Using binary mode to transfer files.ftp>

※ Linux 또는 Unix 환경에서$ sftp [user@]host$ sftp my-

[email protected]:Connected to

117.16.244.171...sftp>

파일 전송 프로토콜 FTP 서버와 클라이언트 사이의 파일 전송을 위한 서비스 주로 파일을 업로드 하거나 다운로드 하기 위하여 사용 ftp(유닉스 ) 혹은 sftp(리눅스 ; secure file transfer pro-tocol) 명령어를 이용하여 파일 전송

20

Page 21: 제 4 장 인터넷

ftp 내부 명령어명령어 의미

!command 로컬 호스트에서 명령어 실행

lcd path 로컬 호스트의 작업 디렉토리 변경

cd path 원격 호스트의 작업 디렉토리 변경

get 파일명 해당 파일을 다운로드

mget 파일명 * 여러 파일들을 다운로드 , 대표문자 사용 가능

put 파일명 해당 파일을 업로드

mput 파일명 * 여러 파일들을 업로드 , 대표문자 사용 가능

help 도움말

ls [path] 원격 호스트의 해당 디렉토리 리스트

pwd 원격 호스트에서 현재 작업 디렉트리 프린트

quit 종료

ascii전송 모드를 아스키 모드 (ascii mode) 로 설정

( 기본 설정이며 텍스트 파일 전송 시 사용 )

bin 전송 모드를 이진 모드 (binary mode) 로 설정

( 실행 파일 , 이진 파일 전송 시 사용 )21

Page 22: 제 4 장 인터넷

4.5 원격 접속

22

Page 23: 제 4 장 인터넷

telnet Unix/Linux/Windows 환경에서 원격 호스트에 연결하여 ,

자신의 컴퓨터를 마치 원격 호스트의 터미널처럼 사용할 수 있다 지역 호스트 (local host), 원격 호스트 (remote host)

$ telnet 호스트명 (혹은 IP 주소 ) 포트번호

$ telnet 117.16.244.171Trying 117.16.244.171...Connected to 117.16.244.171.Escape character is '^]'.CentOS Linux release 6.0 (Final)Kernel 2.6.32-71.el6.i686 on an i686login: mysungPassword:Last login: Wed Oct 16 10:11:11 from 10.80.77.133

23

Page 24: 제 4 장 인터넷

ssh(secure shell)

원격 로그인$ ssh 사용자 @ 호스트명 $ ssh -l 사용자명 호스트명

$ ssh [email protected]

password:

$ ssh –l stu 117.16.244.157

password:

원격 명령 실행$ ssh 호스트명 명령

$ ssh 117.16.244.157 who

[email protected] 의 비밀번호 :

mysung pts/2 Oct 4 11:30 (117.16.244.157)

원격 로그인 혹은 원격 명령 실행을 위한 프로그램 보안을 위해 강력한 인증 및 암호화 기법 사용 기존의 rsh, rlogin, telnet 등을 대체하기 위해

설계됨

24

Page 25: 제 4 장 인터넷

PuTTY PuTTY 을 사용하여 MS 윈도우즈에서도 ssh 를 사용 다운로드 http://www.chiark.greenend.org.uk/~sg-tatham/putty

한글 PuTTY http://kldp.net/projects/iputty telnet, ssh 등 사용 가능

25

Page 26: 제 4 장 인터넷

ping 명령어 원격 컴퓨터의 네트워킹 상태를 확인 ( 호스트가 살아 있는지 알아보기 )

time(roundtrip time): ICMP(Internet Control Message Protocol) echo re-quest 왕복시간• 14 byte MAC header• 20 byte IP header• 8 byte ICMP header• 18 byte ICMP Data Variable• 4 byte MAC trailer

ttl(time to live = hop limit): 배달 오류 패킷을 버리는 시간

$ /bin/ping 호스트명

$ ping marvel.incheon.ac.krPING marvel.incheon.ac.kr (117.16.244.155) 56(84) bytes of data.64 bytes from 117.16.244.155: icmp_req=1 ttl=127 time=0.211 ms64 bytes from 117.16.244.155: icmp_req=2 ttl=127 time=0.198 ms64 bytes from 117.16.244.155: icmp_req=3 ttl=127 time=0.202 ms^C--- marvel.incheon.ac.kr ping statistics ---3 packets transmitted, 3 received, 0% packet loss, time 2000msrtt min/avg/max/mdev = 0.198/0.203/0.211/0.017 ms

$ ping eecs.mit.eduPING EECS.mit.edu (18.62.1.6) 56(84) bytes of data.64 bytes from EECS.MIT.EDU (18.62.1.6): icmp_seq=0 ttl=239 time=229 ms64 bytes from EECS.MIT.EDU (18.62.1.6): icmp_seq=1 ttl=239 time=228 ms...

26

Page 27: 제 4 장 인터넷

27

traceroute 명령어 /bin/traceroute : ICMP(Internet Control Message Protocol) echo request packets이 목적지에 도착하기 위해 방문하는 게이트웨이 순서 추적

$ traceroute mail.incheon.ac.kr (117.16.191.1)traceroute to mail.incheon.ac.kr (117.16.191.1), 30 hops max, 60

byte packet 1 117.16.244.124 (117.16.244.124) 1.494 ms 1.438 ms 1.306 ms 2 10.80.5.25 (10.80.5.25) 1.380 ms 1.251 ms 1.103 ms 3 10.80.251.7 (10.80.251.7) 0.300 ms 0.251 ms 0.183 ms 4 10.80.251.36 (10.80.251.36) 0.451 ms 0.340 ms 0.312 ms 5 117.16.196.97 (117.16.196.97) 0.402 ms 0.293 ms 0.294 ms 6 mail.incheon.ac.kr (117.16.191.1) 0.383 ms 0.417 ms 0.350

ms …

$ traceroute eecs.mit.edu (18.62.1.6)$ traceroute eecs.berkeley.edu (128.32.244.172)$ traceroute www.google.com (173.194.38.116)

Page 28: 제 4 장 인터넷

28

네트워크 관리 유틸리티 네트워크 서비스와 관련된 파일

/etc/sysconfig/network-scripts/ifcfg-eth0 /etc/resolv.conf /etc/hosts /etc/services

/sbin/route: IP 라우팅 테이블 ( 게이트웨이 정보 ) 관리$ route

/sbin/ifconfig ( 또는 $ ip -s link): 네트워크 인터페이스 구성 (enable/disable)$ ifconfig -a (cf.) Windows: ipconfig -all

/sbin/arp: IP 주소를 하드웨어 주소 ( 이더네트 주소 ) 로 사상과 관리 (address resolution protocol)$ arp -a ( 목록 )$ arp -d hostname (su 가 삭제 )$ arp -s hostname (su 가 등록 )

/bin/netstat : 네트워크 상태 알아보기$ netstat –a ( 네트워크 연결상태 )$ netstat –i ( 인터페이스 구성 정보 조사 )$ netstat –r ( 경로배정표 조사 )$ netstat –s ( 네트워크 프로토콜 운용 상의 통계 )

(cf.) /usr/bin/top : 시스템 상태 알아보기

Page 29: 제 4 장 인터넷

네트워킹 & 인터넷29

(참고 ) 네트워크 디몬 (daemons)

daemon=demon[ 발음확인 ] : 부팅시 시작되어 단일 태스크를 영원히 수행하는 백그라운드 프로세스

inetd(eye-net-dee): master daemon [Linux] xinetd [Solaris 11]: smf(Service Management Facility) 로 대체 , inetadm 으로 서비스 관리 (root만 )

$ /usr/sbin/inetadm –e talk 로 enable$ /usr/sbin/inetadm –d talk 로 disable

Linux: /sbin/chkconfig --list (root만 수정 가능 ) # /sbin/chkconfig --add telnet SSH 22 번 포트 tcp INPUT, OUTPUT 열기# iptables -I INPUT -p tcp --dport 22 -j ACCEPT# iptables -I OUTPUT -p tcp --sport 22 -j ACCEPT

Page 30: 제 4 장 인터넷

4.6 월드 와이드 웹

30

Page 31: 제 4 장 인터넷

월드 와이드 웹 (World Wide Web, WWW, W3)

월드 와이드 웹 (WWW) 인터넷에 연결된 컴퓨터들을 통해 사람들이 정보를 공유할 수 있는

전세계적인 정보 공간 하이퍼텍스트 (hypertext)

문서 내의 어떤 위치에서 하이퍼링크를 통하여 연결된 문서나 미디어에 쉽게 접근

하이퍼텍스트 작성 언어 : HTML(Hyper Text Markup Language) HTTP(Hyper Text Transfer Protocol)

웹 서버와 클라이언트가 통신할 때에 사용하는 프로토콜 웹 문서뿐만 아니라 일반 문서 , 음성 , 영상 , 동영상 등 다양한

형식의 데이터 전송 URL(Uniform Resource Locator)

인터넷에 존재하는 여러 가지 자원들에 대한 주소 체계 http://www.mozilla.or.kr

31

Page 32: 제 4 장 인터넷

웹 브라우저 (web browser) 웹 브라우저

WWW 에서 정보를 검색하는 데 사용하는 소프트웨어 WWW 에서 가장 핵심이 되는 소프트웨어 웹페이지 열기 , 최근 방문한 URL 및 즐겨찾기 제공 , 웹페이지 저장

웹 브라우저 종류 1993년 , 모자이크 (Mosaic) 1994년 , 넷스케이프 (Netscape) 1995년 , 인터넷 익스플로러 (Internet Explorer) 파이어폭스 (Firefox) 사파리 (Safari) 크롬 (Chrome)

32

Page 33: 제 4 장 인터넷

크롬 (Chrome) 구글 크롬

빠른 속도가 장점이며 간결한 디자인으로 초보자도 쉽게 사용 악성코드 및 피싱 방지 기능을 사용하여 안전하고 보호된 웹 환경 http://www.google.com/chrome

33

Page 34: 제 4 장 인터넷

사파리 (Safari) 애플 사파리

빠른 속도 모바일용 사파리 ( 아이팟 , 아이폰 , 아이패드 ) http://www.apple.com/safari

34

Page 35: 제 4 장 인터넷

파이어폭스 (Firefox) 모질라 (Mozilla) 파이어폭스

사용자 편의를 위해 스마트 주소창 , 탭 브라우징 , 라이브 북마크 , 통합 검색 , 다양한 검색 엔진 지원 등을 제공

http://www.mozilla.or.kr

35

Page 36: 제 4 장 인터넷

핵심 개념 인터넷은 TCP/IP 프로토콜을 이용해 정보를 주고받는 전세계적인

공개 컴퓨터 통신망이다 ftp 혹은 sftp 명령어를 이용하여 파일을 전송할 수 있다 telnet 혹은 ssh 명령어를 이용하여 원격 호스트에 접속할 수

있다 네트워크 관리 유틸리티

$ ping $ nslookup $ traceroute $ route $ ifconfig -a $ arp -a $ netstat -s

36