프로그래밍 공부
작성일
2022. 12. 1. 02:18
작성자
WDmil
728x90

UDP 특징

TCP특징

 

IP는 서로 고유한 아이디로, 데이터를 누가 보냈는지 보기 위해 있는거임

네트워크의 기초 TCP/IP 프로토콜 주소의 이해      
우분투 패키지 설치 APT 명령 dpkg 명령 aptlitude 명령 우분투 소프트웨어 센터  
소스코드 설치 아카이브 생성 파일 압축 gcc 컴파일 make 명령  

드라이버 = 운영체제와 앱 사이의 인터페이스 역활을 해준다.

 

TCP/IP 프로토콜

  • 프로토콜이란 컴퓨터와 컴퓨터 사이에서 데이터를 어떻게 주고받을 것인지를 정의한 통신 규약
  • 인터넷 이라고 부르는 네트워크는 TCP/IP 라는 프로토콜에 따라 데이터를 주고받음
  • TCP/IP 프로토콜은 표와 같이 5계층으로 구성
  • 전송 계층의 TCp와 네트워크 계층의 IP로 전체 프로토콜을 대표하여 TCP/IP 프로토콜 이라고 한다.
계층 기능 프로토콜 전송 단위
응용 계층 서비스 제공 응용 프로그램 DNS,FTP,SSH,HTTP,Telnet 메시지
전송 계층 응용 프로그램으로 데이터를 전달, 데이터 흐름 제어 및 전송 신뢰성 담당 TCP, UDP 세그먼트
네트워크 계층 주소 관리 및 경로 탐생 IP, ICMP 패킷
링크 계층 네트워크 장치, 드라이버 ARP 프레임
물리 계층 케이블 등 전송매체 구리선, 광케이블, 무선 비트

주소

일반적으로 네트워크 인터페이스는 거의 대부분 이더넷(ethernet) 방식을 사용

컴퓨터의 주소는 MAC 주소 IP주소 호스트로 구성됨.

 

IP주소

네트워크 부분, 호스트 부분으로 구성됨.

네트워크 부분 = 호스트의 묶음

호스트 = 각각의 IP를 가진 컴퓨터들.

즉, 네트워크 안에 호스트가 있다고 생각하면 된다.

네트워크는 지역구 이고 호스트는 그 안의 시민 이정도로 생각하면 이해가 편할것!

A클래스 B클래스 C클래스로 구부노딘다.

C클래스 = 앞의 3바이트가 네트워크 부분이다.

뒤으 1바이트만 호스트 부분으로 사용된다.

호스트 부분으로 사용할 수 있는 숫자 = 1~254

예 192.168.1005는 C. 클래스 임으로 네트워크 부분은 앞의 세자리인 192.168.100 이고 5가 호스트 부분이다.

 

넷 마스크와 브로드캐스트 주소

넷마스크 : IP 주서에서 네트워크 부분을 알려주는 역활

넷마스크는 하나의 네트워크를 다시 작은 네트워크로 분리할 때도 사용한다. 서브넷 마스크라고 부르기도 한다.

넷마스크

10진수 2진수 ( AND) 연산을 한다.
192.168.100.5 11000000.10111100.01100100.00000101
255.255.255.0 111111111.111111111.11111111.000000000
192.168.100.0 11000000.10111100.01100100.0000000000

IP주소와 넷마스크를 10진수에서 2진수로 바꾼 후 AND 연산을 수행한다.

AND연산을 하면 네트워크만 남고 호스트는 0이된다.

 

네트워크 설정하기

하려면

IP주서, 넷마스크, 브로드케스트 주소, 게이트워이 주소, DMS 주소

호스트 이름 설정하기

호스트 이름 확인하기 : hostname, uname -n

 

   

 

호스트 이름 설정하기

hostname 명령

hostname  
   

호스트 이름 설정 파일

재시작해도 호스트 이름이 바뀐 상태를 유지하려면 호스트 이름을 설정하는 파일 자체를 수정해야 한다.

우분투에서 설정하는 파일의 경로 == 

 

네트워크 인터페이스 설정하기

ifconfig  
기능 네트워크 인터페이스 IP 주소를 설정한다.
형식 ifconfig [인터페이스 명] [옵션] [값]
옵션 -a : 시스템의 전체 인터페이스에 대한 정보를 출력한다.
up/down : 인터페이스를 활성화, 비활성화 한다.
netmask 주소 : 넷 마스크 주소를 설정한다.
broadcast 주소 : 브로드 케스트 주소를 설정한다.

현재 설치된 네트워크 인터페이스 설정 확인하기 : ifconfig

ifconfig치면 된다.

 

네트워크 인터페이스 사용 해제하기 down 옵션

ifconfig eth0 down

 

네트워크 인터페이스 활성화하기 up 옵션

ifconfig eth0 up

 

게이트웨이 설정하기

인ㄴ터넷 네트워크와 네트워크 연결

네트워크를 다른 네트워크와 연결할 떄 연결점이 되는 장치가 게이트웨이

게이트웨이의 설정과 확인은 route 명령으로 수행한다.

 

DNS 설정하기

호스트 명을 IP 주소로 바꾸는 역활을 수행한다.

만약 DNS가 설정되어 있지 않으면 이름으로 서버에 접속할 수 없으며, 직접 IP주소를 사용하여 접속이 가능하다.

DNS 서버 지정하기

DNS 서버의 주소를 /etc/resolv.conf 파일에 저장된다.

 

DNS 서버에 질의하기 nslookup

 

통신 확인하기 : ping

ping  
기능 네트워크 장비에 신호를 보낸다
형식 ping [ 옵션 ] 목적지 주소
옵션 -a : 통신이 되면 소리를 낸다.
-q : 테스트 결과를 지속적으로 보여주지 않고 종합 결과만 보낸다.
-c 개수 : 보낼 패킷 수를 지정한다.
사용 예 ping 192.168.0.1
ping -a www.naver.com

통신 경로 확인하기

traceroute  
기능 목적지 까지 가는 패킷이 거치는 경로를 출력한다.
형식 traceoute 목적지 주소
사용 예 traceoute 192.168.0.1

중간 노드의 기관 확인 : whois 명령 사용

 

네트워크 상태 정보 출력하기

netstat  

라우팅 테이블 확인하기 -r 옵션

netstart -r

 

열려있는포트를 사용중인 프로세스 확인하기 : -p 옵션

netstart -p

 

프로토콜 별 네트워크 통계 정보 확인하기 -s 옵션

netstart -s

 

패킷 캡처하기 : tdpdump

tcpdump

tcpdump  
기능 네트워크 트래픽을 덤프한다.
형식 tcpdump [ 옵션 ]
옵션 -c 패킷 수 : 지정한 패킷 수 만큼 덤프받고 종료한다.
-i 인터페이스 명 : 특정 인터페이스를 지정한다.
-n : IP 주소를 호스트 명으로 바꾸지 않는다.
-q : 

캡처한 패킷 정보를 파이롤 저장하기 : -w 옵션

tcpdump -c -3 -w dumpdata.out

 

캡처한 패킷 파일 읽기 -r

tcpdump -r

 

캡처한 내용을 ASC2로 보기 : -X 옵션

 

netstate, route, tcpdump, 

728x90