일일 정리

라우터, 네트워크 분할, 리눅스 명령어(tar, stat) + VI에디터

mysecurity 2025. 1. 9. 17:47
라우터

 

라우터는 서로 다른 네트워크 주소를 연결해주는 장치이다. 

특별한 장치가 따로 있는 것은 아니고, 서로 다른 네트워크 주소를 연결해주는 기기들은 모두 라우터라고 할 수 있다.

때문에 하드웨어가 아닌 소프트웨어적인 의미가 크다고 할 수 있다.

 

브릿지와의 차이점은 브릿지는 콜리전 도메인을 나누고, 라우터는 브로드캐스트 도메인을 나눈다는 것이다.

라우터 구현 예시
라우팅 테이블

 

각 네트워크의 네트워크, 브로드캐스트, 게이트웨이 주소

 

같은 네트워크 상에서만 통신이 이루어진다면 라우터가 할 역할은 없지만, 1.1.1.2/24 -> 2.1.1.2/24 처럼 출발지와 목적지가 같은 네트워크 상에 없는 경우, 그 패킷은 default gateway로 전해져 라우터를 통과해 목적지에 도달한다.

 

만약 3.1.1.0의 네트워크 주소를 가진 C network가 그림상 B network 오른쪽에 라우터로 연결되어있다면 현 상태에서는 A network에서 C network로 패킷을 보낼 수 없다.

이런 경우 A 라우터의 라우팅 테이블의 2번 포트에 3.1.1.0/24를 수동으로 등록해줘야한다.

 

 

C -> S로 패킷 전송

 

위의 그림과 같이 패킷에는 메시지 + 출발/목적지 IP 주소 + 출발지 맥주소 + 도착지 맥주소가 들어있다. 1.1.1.3의 네트워크에서는 2.1.1.3의 맥주소를 찾을 수 없으므로 1.1.1.0 네트워크 주소에 있는 1.1.1.1(default gateway)로 보내고 2.1.1.0 네트워크 주소에 있는 2.1.1.1(default gateway)을 통해 2.1.1.3에게 전달된다.

 

비트마스킹을 통한 네트워크 분할

 

IP 주소 범위: 1.1.1.0~1.1.1.255

 

IP 주소의 범위가 위와 같을 때 네트워크를 4개로 분할하기 위한 서브넷 마스크는 다음과 같다.

서브넷 마스크: 255.255.255.128 (11111111.11111111.11111111.11000000)

 

네트워크를 나눌 수 있는 경우의 수는 다음과 같다.

 

분할된 첫 번째 IP 주소 범위     :  00 (000000~111111) = 0 ~ 63          -> 1.1.1.0 ~ 1.1.1.63

분할된 두 번째 IP 주소 범위     :  01 (000000~111111) = 64 ~ 127      -> 1.1.1.64 ~ 1.1.1.127

분할된 세 번째 IP 주소 범위     :  10 (000000~111111) = 128 ~ 191    -> 1.1.1.128 ~ 1.1.1.191

분할된 네 번째 IP 주소 범위     :  11 (000000~111111) = 192 ~ 255    -> 1.1.1.129 ~ 1.1.1.255

-----------------------------------------------------------------------------------------------------------------------------

IP 주소의 범위가 위와 같을 때 네트워크를 8개로 분할하기 위한 서브넷 마스크는 다음과 같다.

서브넷 마스크: 255.255.255.224 (11111111.11111111.11111111.11100000)

 

네트워크를 나눌 수 있는 경우의 수는 다음과 같다.

 

분할된 첫 번째 IP 주소 범위     :  000 (00000~11111) = 0 ~ 31         -> 1.1.1.0 ~ 1.1.1.31

분할된 두 번째 IP 주소 범위     :  001 (00000~11111) = 32 ~ 63       -> 1.1.1.32 ~ 1.1.1.63

분할된 세 번째 IP 주소 범위     :  010 (00000~11111) = 64 ~ 95       -> 1.1.1.64 ~ 1.1.1.95

분할된 네 번째 IP 주소 범위     :  011 (00000~11111) = 96 ~ 127     -> 1.1.1.96 ~ 1.1.1.127

분할된 다섯 번째 IP 주소 범위 :  100 (00000~11111) = 128 ~ 159   -> 1.1.1.128 ~ 1.1.1.159

분할된 여섯 번째 IP 주소 범위 :  101 (00000~11111) = 160 ~ 191   -> 1.1.1.160 ~ 1.1.1.191

분할된 일곱 번째 IP 주소 범위 :  110 (00000~11111) = 192 ~ 223   -> 1.1.1.192 ~ 1.1.1.223

분할된 여덟 번째 IP 주소 범위 :  111 (00000~11111) = 224 ~ 255   -> 1.1.1.224 ~ 1.1.1.255

 

이로써 서브넷 마스크의 1의 갯수가 오른쪽으로 n개 늘어나면 네트워크는 2의 n제곱만큼 늘어나는 것을 확인할 수 있다.

 

리눅스 명령어

 

※ tar

tar 명령어는 여러 개의 파일을 하나의 파일로 압축한다.

# tar  [옵션]  [압축파일명]  [대상]

 

-c 옵션: 대상을 압축한다.

-x 옵션: 압축한 것을 푼다.

-v 옵션: 작업 내용을 출력한다.

-z 옵션: gzip를 이용해서 압축(압축해제)한다.

-f 옵션: 파일명을 지정한다.

 

tar를 이용한 증분 백업 시의 명령어는 다음과 같다.

# tar  [옵션]  [압축파일명]  ‐g  [백업정보 파일] [대상]

ex) # tar cvfz home_full.tar.gz  ‐g  /backup/home_backup /home

 

증분백업은 파일의 변경부분만 추가적으로 압축하는 방식이다.

 

백업정보 파일은 해시를 이용한 인증코드로, 파일이 오염되지 않았는지를 확인한다.

 

증분 백업 시 복구는 반드시 압축 순으로 해제한다.

 

파일 단위 백업이므로 OS레벨에서의 완전한 증분 백업은 불가능하다.

 

tar 명령어를 실행할 때 cvfz (압축할 때) 혹은 xvfz (해제할 때) 옵션을 붙여서 사용해버린다.

 

 

  stat

파일의 시간 정보를 출력한다.

# stat  파일

 

- accecss time

파일에 마지막으로 접근한 시간을 나타내는 것으로, 시스템이나 응용프로그램이 마지막으로 파일에 접근한 시간이다.

 

- change time

파일의 퍼미션 등 속성이 변경된 시간이다.

 

- modify time

파일의 내용이 마지막으로 수정된 시간이다.

 

VI 에디터

 

vi 에디터는 반드시 파일명을 추가해서 실행한다.

# vi 파일명

 

다음의 세 가지 모드로 구성되어 있다.

명령 모드: 입력 이외의 편집작업을 수행한다.

입력 모드: 데이터 입력 및 수정을 수행한다.

실행 모드: 파일 저장, 종료를 수행한다.

 

모드 간 이동 명령어

명령 모드 명령어

x  : 커서위치에서 한 글자씩 삭제한다.

dd: 커서가 위치한 라인을 삭제한다.

 

실행 모드 명령어

:wq   : 저장 후 종료한다.

:q!     : 저장하지 않고 종료한다.