기말
TCP
- three way handshake and TCP flag - UAPRSF
- error control - cli seq=5001(300B) > server ack=5301 > cli seq=5301(300) > server ack=5301(error) > cli seq=5301(300)
- TCP window size : ex) 300B
IP
- FTP(TCP port 21)
- HTTP 1.1 vs HTTP 1.2
- SMTP(TCP port 25)
- SNMP(UDP port 161)
- DHCP(DUP posrt 67,68)
network
- 네트워크 관리 5가지 기능 - 장애, 구성, 성능, 계정, 보안 관리
- nbtstat -A
- netstat -s
- netstat -
network
- 비밀성, 무결성, 가용성
- IP spoofing(변조) vs IP sniffing(도청)
- 대칭키(키 한개) vs 비대칭키(개인키 공개키)
- 기밀성(암호화): 받은 공개키로 암호화하여 키 주인에게 전송
- 전자서명: 개인키로 암호화된 데이터를 공개키로 풀음
웹과 php
- form : 브라우저에서 서버로 데이터 전송 name, method, action, input(tag)
- php로 post 방식으로 데이터 받아 echo
- GET 방식 php(href에서 ?뒤에 &로 여러개 지정가능)
<form name="form1" method="post" action="view2.php">
<ul>
<li>아이디 : <input type="text" name="id"></li>
<li>비밀번호 : <input type="password" name="pass"></li>
<li><input type="submit" value="확인"></li>
</ul>
</form>
위에서 포스트 요청보내면 아래 보냄
<?php
$id = $_POST["id"];
$pass = $_POST["pass"];
?>
<ul>
<li>아이디 : <?= $id?></li>
<li>비밀번호 : <?= $pass?></li>
</ul>
소켓 프로그래밍
- 코드만 서버, 클라이언트
- 포트 맞추는거
- 서버 listen > accept > recv > send > close
- 클라 socket > connect > send > recv > close
소켓 UDP
- 하나의 소켓만 쓴다는 차이
- 포트
- 서버 socket > bind > recvfrom > sendto > close
- 클라 socket > sendto > recvfrom > close
네트워크
네트워크 기본
네트워크
- 컴퓨터를 서로 연결하는 것
- 연결방법은 LAN(Local Area Network), 케이블, 무선매체 등
- 장점 - 데이터 공유, 주변장치 공유, 능률적인 통신, 손쉬운 백업
패킷
- 네트워크를 통해 전송되는 데이터의 전송 단위.
- 순서없이 랜덤으로 전송.
- 구조 - 헤더(데이터 형태와 송수신지), 페이로드(데이터), 제어 요소 등
- 헤더: 데이터 송수신지, 일련번호
- 페이로드: 실제 전송 데이터
- ex) 1 0110010, 2 10110011
대역폭
- 최대 데이터 전송 속도.
- 기본 단위는 bps
이더넷
- 회사, 학교 등 한정된 영역에서 사용되는 로컬 영역 네트워크(LAN) 기술로 보통 유선으로 연결
인터넷
- 유무선으로 연결하는 글로벌 네트워크 기술
IP
- 네트워크에 연결된 장치의 고유주소
- IPv4: “x.x.x.x” 형식으로 네 개의 8비트 숫자로 표현
- IPv6: 128비트로 표현되며, 16진수 숫자와 콜론(:)을 사용하여 표기
네트워크 분석 도구
- 크게 하드웨어 분석도구(들고다님)와 소프트웨어 분석도구(컴퓨터에 설치)
와이어 샤크
- 소프트웨어 분석 도구
- WinPcap을 사용하여 패킷 캡처
- GPL GNU 오픈소스 소프트웨어
- 패킷 캡처 과정
- 캡처하려는 이더넷 선택
- 웹사이트 접속(캐시 설정 해제 해야함)
- 보고싶은 패킷 클릭
- 파일-세이브로 캡처 파일 저장(.pcapng)
네트워크 설정
순서 | 유선 설정 | 무선 설정 |
---|---|---|
1 | 컴퓨터에 LAN 카드(NIC)를 설치 | 컴퓨터에 무선 LAN 카드(NIC) 설치 |
2 | 이더넷 연결 | 무선 네트워크 연결 |
3 | 연결됐을거임 | 라우터가 연결된 컴퓨터에서 확인 |
4 | 네트워크 테스트 | 네트워크 테스트 |
네트워크 명령어(cmd)
hostname
: 컴퓨터 이름 확인net user
: 컴퓨터 사용자 계정 확인ipconfig
: IP주소, 게이트웨이 등 확인ipconfig/all
: MAC 주소 확인ipconfig/release
: IP 주소 해제. 이후 네트워크 연결 해제ipconfig/renew
: 네크워크에서 DHCP를 사용할 때 새로운 IP주소 생성하여 네트워크 연결ping {IP주소 또는 url}
: 네트워크 상태 점검tracert {IP주소 또는 url}
: IP주소까지의 경로 추적
네트워크 구성
컴퓨터
접속장치
: LAN카드, 브리지, 허브, 스위치, 백본, 라우터, 게이트웨이 등전송매체
: 케이블
네트워크 형태
근거리 네트워크(LAN)
- 범위가 건물안
- 적외선 링크, 무선 송수신기 사용
광역 네트워크(WAN)
- 두개 이상의 LAN을 넓은 지역을 걸쳐 연결(서울 본사-지방 공장)
인트라넷
- 인터넷 기술을 이용한 사설 네트워크
- ISP(인터넷 서비스 제공업체)로 먼 지역도 연결
접속장치
LAN 카드(NIC)
- 외부 네트워크와 데이터를 송수신하기 위한 컴퓨터 내에 설치하는 확장 카드
- 전송매체에 접속, 데이터 입출력 및 송수신, 프로토콜 처리
- 마더보드 확장 슬롯에 설치
- 48비트의 MAC 주소가 있음(24비트는 제조사, 나머지는 일련번호)
- 이상있으면 이걸로 점검
ping 127.0.0.1
허브
- 여러개의 입출력 포트가 있음
- 컴퓨터가 3대 이상일 때 사용
- 모든 대상에게 데이터 전송
- 이더넷 케이블(UTP) 사용
- 가장 간단하고 저렴
더미허브
: 단순함 but 대역폭이 노드 수만큼 분할스위칭허브(스위치)
: 수신지 주소로 스위칭, 더미허브의 문제 해결스태커블 허브
: 허브를 쌓아서 구성, 하나의 허브처럼 연결인텔리전트 허브
: 지능형 기능 포함
스위치
- 컴퓨터에 할당되는 대역폭 극대화
- 스위칭허브도 이거의 종류 중 하나임
브리지
- 두개 이상의 근거리 통신망을 하나의 네트워크로
- 수신지 주소에 따라 특정 트래픽만 통과
- 데이터 충돌을 막아 통신속도를 떨어지지 않게
- 스위치와 차이점: 전체 네트워크 트래픽을 줄이기 위해 네트워크를 세그먼트 단위로 분할
게이트웨이
- 종류가 다른 두 개 이상의 네트워크 연결
- 접속 가능 통신망 : LAN, PDN(공중 데이터망), PSDN(공중전화 데이터망)
- 브리지와의 차이점 : 서로 다른 프로토콜 통신망 간에도 연결 가능
중계기(Repeater)
- 접속 시스템 수 증가, 네트워크 전송 거리 연장
- 수신받은 신호를 증폭하여(내용 변경 X) 다음 구간으로 재전송
- 광섬유(전송거리:수~수백KM)에서도 사용
라우터
- 서로 다른 네트워크 간 통신
- LAN, MAN, WAN 연결 가능
- 라우팅: 수신지까지 최적 거리
- 라우팅 테이블: 다음 주소 적혀 있음
- 오류패킷폐기, 혼잡제어, 트래픽방향지정, 웹페이지요청수신지로전송
- 무선 AP와 라우터가 있으면 이동 중에 엑세스 가능
네트워크 접속형태
성형
- 허브가 중앙에
- 장점: 저렴하고, 유지보수확장 용이, 링크 하나 끊어져도 전체에 영향 X
- 단점: 중앙에 장애가 있으면 전체에 영향 / 통신량이 많으면 전송 지연 / 많은 케이블 필요
트리형
- 상위 계층 노드가 하위 노드 직접 제어
- 장점: 제어 확장 간단, 데이터 전송 거리 늘릴 수 있음, 컴퓨터에 우선순위
- 단점: 병목현상, 중앙 전송제어장치 다운되면 전체 네트워크 장애
버스형
- 일자형 케이블인 버스에 노드와 주변장치 연결(버스 양쪽에 터미네이터)
- 장점: 설치 간단, 저렴, 확장 쉬움, 케이블 양 적음
- 단점: 장비 수 많으면 네트워크 성능 저하, 중앙 케이블에 장애가 있으면 전체 영향, 재구성이나 결합분리 어려움, 베이스밴드 방식에서 중계기 사용해야함, 충돌 발생
링형
- 인접한 노드끼리만 연결(단순 링형과 이중 링형으로 나뉨)
- 장점: 구조단순, 문제 발생 확인 쉬움
- 단점: 링 제어 복잡, 단순 링형은 결함이 생기면 전체 네트워크 장애
그물형
- 모든 노드가 서로 연결(케이브 n(n-1)/2개 필요)
- 장점: 통신량 문제 해결, 비밀유지와 보안, 결함의 식별이 쉬움
- 단점: 설치와 재구성 어려움, 엄청 많은 케이블 필요
혼합형
- 위에꺼 합침
전송매체
크게 유선 전송매체와 무선 전송매체로 나뉨
동축케이블 |
꼬임선 |
광섬유 |
|
---|---|---|---|
설치 | 1(간단) | 2 | 3 |
대역폭 | 2 | 3 | 1(높음) |
비용 | 2 | 1(저렴) | 3 |
전기간섭 | 2 | 3 | 1(없음) |
감쇠현상 | 2 | 3 | 1(낮음) |
사용 | 유선방송, CATV, 근거리 통신망 |
유선 전송매체
동축 케이블
: 두개의 전도체 사이에 절연체- 10BASE-2: 얇음, 10Mbps, 전기 간섭 X, 길이 김, 설치 쉬움, 저렴
- 10BASE-5: 굵음, 10Mbps, 전기 간섭 X, 길이 짧음, 설치 어려움, 비쌈
- 베이스밴드: 디지털 신호(LAN), 최대 1키로, 최대 500Mbps
- 브로드밴드: 아날로그 신호(케이블 TV), 수십키로, 수백 Mbps
꼬임선
: 플라스틱으로 덮힌 두 가닥 절연 구리선 꼬아서- UTP: 피복 없어서 저렴, 최대 100Mbps
- FTP: 피복을 씌우고 금속형 물질로 한번더 쌈
- STP: 알루미늄 은박 피복이 있어 노이즈 차단
광섬유
: 높은
무선 전송매체(비유도매체)
- 초장파, 장파, 중파, 단파, 초단파 등등
라디오파
: 빛의 속도, 진공 상태나 대기 통과, 파라볼라안테나 불필요마이크로파
: 극초단파~밀리미터파, 직진 흡수 반사 성질, 파라볼라안테나 필요
통신 방식
클라이언트/서버 시스템
LAN에서
유니 캐스트
- 서버-클라이언트 1:1
- MAC 주소로 특정 컴퓨터에만 전송(수신지 MAC 주소가 다르면 버림)
브로드 캐스트
- 서버-클라이언트 1:다
- 모든 컴퓨터에 전송(주소는 FF-FF-FF-FF-FF-FF)
- 다른 라우터를 찾거나, 라우터끼리 데이터를 교환할 때, 서버가 모든 클라이언트에게 알릴 때 등
- 네트워크 성능 저하될 수 있음
멀티 캐스트
- 특정 그룹만 데이터 전송
- 유니 캐스트, 브로드 캐스트의 장점을 결합
전송방향에 따라
단방향(simplex) 통신
- 송신측과 수신측이 미리 고정되어 데이터가 한쪽으로만
- 단방향이여도 전송로는 두개가 필요
- 라디오, 아날로그 TV, 모니터, 키보드 등
양방향(duplex) 통신
반이중 통신
: 송수신 동시에 못함(채널 1개) ex) 무전기전이중 통신
: 송수신 동시에 가능(채널 2개)
직렬, 병렬
직렬 전송
- 원거리 통신에서 사용. 통신회선 한개만 필요하므로 경제적
동기식 전송
- 미리 정해진 수만큼 문자열 묶어 전달
- 동기화: 송신 데이터를 수신 측에서 잘받도록 하는것
- 송신비트시간간격(TS)와 수신비트시간간격(TR) 다르기 때문
- 비트 지향 동기화, 문자 지향 동기화 - 무엇으로 동기화 시키냐
병렬 전송
OSI 참조 모델
송신 맥 수신 맥 데이터 csma/ca 와 ?의 차이점 이더넷 전송시점 차이점?
계층화: 프로토콜을 몇개의 계층으로 나누는 것
OSI 참조 모델
: 통신 기능을 7개로 계층화한 규격
- 7 응용 계층
- 6 표현 계층
- 5 세션 계층
- 4 전송 계층
- 3 네트워크 계층
- 2 데이터 링크 계층
- 1 물리 계층
특징
- 하드웨어나 소프트웨어의 논리적인 변경없이 시스템 간의 통신을 개방
- 각 계층은 헤더와 데이터 단위로 정의
- 상위-하위 계층 사이에 주고받는 것을 SDU(서비스 데이터 단위)
- 같은 계층 사이에 주고받는 것을 PDU(프로토콜 데이터 단위)
- PDU는 각 계층마다 라벨을 붙임(링크-프레임, 네트워크-패킷, 전송-세그먼트)
TCP/IP 모델
: OSI 참조 모델을 4계층으로 단순화
- 4 응용 계층
- 3 전송 계층
- 2 네트워크 계층
- 1 네트워크 접속 계층
MAC addrestt
- 48비트(6바이트)
- aa-bb-cc-dd-ee-ff
데이터 링크 계층
물리적 링크를 이용하여 신뢰성 있는 데이터를 전송하는 계층
비트를 프레임이라는 논리적 단위로 구성
전송하려는 데이터에 인접하는 노드(시스템)의 주소가 더해진다
주소는 최종 수신지의 주소가 아니라 전송되는 다음 노드의 주소
네트워크 계층에서 받은 데이터 단위(패킷)를 프레임으로 구성하여 물리 계층으로 전송
기능
- 주소 지정 : 이 계층에서 추가된 시작과 끝부분에는 가장 최근에 데이터가 지나온 노드(시스템)와 다음에 접근할 노드의 물리 주소가 포함된다.
- 순서 제어 : 데이터를 순차적으로 전송하기 위해 프레임 번호 부여 기능을 수행한다. 수신 노드에서 식별 번호를 추가하여 프레임의 순서를 제어한다.
- 흐름 제어 : 한 번에 전송할 수 있는 데이터양을 조절하고, 연속으로 프레임을 전송할 때 수신 여부를 확인하는 기능을 수행한다.
- 오류 처리 : 오류 검출과 정정 기능을 수행하고, 오류가 발생한 프레임의 재전송을 요구할 수 있다.
- 프레임 : 데이터를 전송할 때 처리가 쉽도록 프레임 단위로 전송한다.
- 동기화 : 헤더에는 수신 측에 프레임이 도착했음을 알리는 비트가 있고, 트레일러에는 프레임의 끝을 나타내는 비트와 오류를 제어하는 비트 등이 있다.
- 데이터 링크 설정 : 전송할 데이터의 앞에는 헤더를, 뒤에는 트레일러를 추가하여 물리 계층으로 전달하는데, 헤더와 트레일러에는 송신 측 주소와 수신 측 주소 등의 정보가 포함된다. 수신 측의 데이터 링크 계층은 헤더와 트레일러를 삭제한 후 수신 측의 네트워크 계층으로 전달한다.
네트워크 계층
프로토콜
- 서로 다른 시스템의 데이터를 전송하는 규약
간단한 프로토콜
- 오류없이 정보를 수신하면 확인 응답(ACK) 전송
- 오류가 있으면 부정 응답(NAK)
- 부정 응답을 받으면 다시 보냄
- 부정 응답 10회 이상 발생하면 통신 중단
TCP/IP
- 전송제어 프로토콜 + 인터넷 프로토콜
- IP : 패킷으로 변환된 데이터를 호스트에게 전송
- TCP : 오류 검출하면 재전송 요청
TCP/IP 계층
- 4 응용계층 : OSI(응용, 표현, 세션) FTP, SMTP, SNMP
- 3 전송계층 : OSI(전송) TCP, UDP
- 2 네트워크 계층 : OSI(네트워크) IP, ARP, ICMP, IGMP
- 1 네트워크 접속 계층 : OSI(데이터 링크, 물리) 이더넷 등
TCP/IP 주소
- 물리 주소(MAC) : 48비트 / 네트워크 접속 계층에서
- 인터넷 주소(IP) : 32비트 / 네트워크 계층에서
- 포트 주소 : 16비트 / 전송계층에서
! ARP = IP 주소를 MAC 주소로 변환
IPv4
네트워크 규모에 따라 A,B,C,D,E로 나눔
- ip = network ID + host ID
- ip A class = 8+24
- ip B class = 16+16
- ip C class = 24+8
10 네트워크 보안
- 컴퓨터 보안: 컴퓨터 자체 데이터를 보호
네트워크 보안
: 컴퓨터 간 데이터를 안전하게 전송
보안 위협
- 전송차단: 공격자가 데이터를 전송할 수 없다는 메시지를 송신 측에 전송
- 가로채기: 공격자가 전송된 데이터를 가로챔
- 변조: 공격자가 데이터를 가로채어 데이터를 변경하여 수신 측에 전송
- 위조: 공격자가 송신측이 전송한 것 같은 메시지를 만들어 전송
네트워크 보안 필요성
비밀성
, 무결성
, 가용성
네트워크 위협
스미싱
- SMS와 phising의 합성어
- SMS에 포함된 URL을 클릭하면 악성앱이 설치
- 많이 사용되는 정상 어플을 사칭
랜섬웨어
- 몸값(ransom)과 소프트웨어의 합성어
- 피해자 컴퓨터에 데이터를 암호화하여 금전요구
- 사이트 방문만으로로 감염가능하며, 드라이브 바이 다운로드 기범을 통해
- 종류: 워너크라이, 로키, 크립트XXX
공유기 보안 위협
- 보안설정이 되어있지않은 무선 LAN은 무성공유기를 무단으로 사용할 수 있고