[RHEL6] 네트워크 명령어 3탄(ftp, host, hostid, hostname)
본문 바로가기
IT 이야기/Linux 명령어

[RHEL6] 네트워크 명령어 3탄(ftp, host, hostid, hostname)

by 찬찬이 아빠 2020. 1. 22.
반응형
  6. ftp(ftp 클라이언트)

 1) 경로 : /usr/bin/ftp

 2) 요약 : ftp 서비스를 제공하는 클라이언트

 3) 사용 방법 : ftp [옵션] [접속 호스트명]

 4) 옵션

 -v : 데이터 전송 통계와 서버의 반응을 모두 출력

 

 5) 추가 설명

최초의 ftp 클라이언트이며 대부분의 리눅스 배포판에 들어 있습니다.

 

<ftp 접속 후 사용 명령어>

?

전체 사용 가능한 명령어를 출력

?과 함께 명령어를 지정하면 명령어에 대한 사용법을 출력

!

쉘로 빠져 나옴

$

매크로를 실행

account

원격 서버로 사용자의 명령을 전송

append

로컬에 있는 파일을 서버로 보내기 위해 추가

acsii mode

아스키 ASCII 파일 전송 모드로 전환

bell

명령어를 완료했을 때 비프음을 들려줌

binary mode

바이너리 binary 파일 전송 모드로 전환

bye

exit

quit

ftp 세션을 끊고, ftp 클라이언트를 종료

case

mget 명령어에서 대/소문자 구분을 설정 혹은 해제

cd

원격의 작업 디렉터리를 변경

cdup

원격의 작업 디렉터리 위치를 한 단계 위인 부모 디렉터리로 이동

chmod

원격 파일의 권한을 변경

close

disconnect

ftp 세션을 종료

cr

아스키 모드에서 파일을 받을 때 캐리지 리턴을 설정 혹은 해제

delete

원격의 파일을 삭제

debug

디버그 모드를 설정/해제

dir

원격 디렉터리의 목록을 상세히 출력

form 파일 전송 형식을 설정
get [파일명] ftp 서버에서 파일을 다운로드
get [파일명] [새로운 파일명] ftp 서버에서 받은 파일을 새로운 파일명으로 저장
get 파일명1 파일명2 ... 파일명N 지정한 여러 파일을 다운로드
hash 파일을 전송할 때 각 버퍼의 크기마다 "#"를 출력
help 로컬의 도움말 정보를 출력
idle 원격에서 대기 상태 타이머 idle timer을 확인/설정
image 바이너리전송 탕ㅣㅁ을 설정
lcd 로컬의 작업 디렉터리를 변경
ls 원격 디렉터리의 상세한 목록을 출력
macdef 매크로를 정의
mdelete 한 번에 여러 파일들을 삭제
mdir 한 번에 여러 원격 디렉터리의 상세한 목록을 출력
mget 한 번에 여러 파일을 다운로드
mkdir 원격 서버에 디렉터리를 생성
mls 한 번에 여러 원격 디렉터리 목록을 출력
mode 전송모드 ASCII나 binary로 전송 모드를 설정
modtime 원격 파일의 마지막 변경 시간을 출력
mput 한 번에 여러 파일을 전송
newer 만일 원격 파일이 로컬 파일보다 최근의 파일이라면 다운로드
open 원격 ftp 서버로 접속
passive 패시브(passive) 전송 모드로 변경
put [파일명] 로컬의 파일을 ftp 서버로 업로드
put [파일명] [새로운 파일명] 파일을 ftp 서버에 지정한 새로운 파일명으로 저장
put 파일명1 파일명2 ... 파일명N ftp 서버에 지정한 여러 파일을 업로드
pwd 원격 서버의 작업 디렉터리 위치를 출력
recv 원격 서버에 있는 파일을 다운로드
reget 마지막 파일을 다시 다운로드
rstatus 원격 서버의 상태를 출력
rename 파일의 이름을 변경
rmdir 원격 서버의 디렉터리를 삭제
send 하나의 파일을 전송
size 원격 파일의 크기를 출력
status 현재 상태를 출력
system 원격 시스템의 타입을 출력
tick 전송 시 바이트 카운트 출력을 설정/해제
trace 패킷 추척을 설정/해제
type 파일 전송 타입을 설정
user 새로운 사용자 정보를 전송
umask 원격에서 umask 정보를 출력
verbose 상세한 모드로 설정/해제

 

<ftp 서버 접속 방법>

chanchan.co.kr의 ftp 서버에 접근하는 방법은 ftp와 호스트망을 연속해서 입력하는 방법과 ftp 명령어만 실행하여 ftp> 쉘을 열고 open 명령어로 호스트에 접속하는 방법이 있습니다.

 

# ftp chanchan.co.kr

# ftp
ftp> open chanchan.co.kr

 

<ftp 서버 접속 하기>

접속 시도를 하면 ftp 서버 정보를 출력하고, 사용자 계정을 입력할 때가지 대기 상태가 됩니다. 만일 계정을 입력하지 않으면 anonymous(대부분의 ftp서버에 기본으로 열러 있는 익명 계정으로 사용에 제한이 있음) 계정으로 접속합니다.

# ftp chanchan.co.kr
Connected to chanchan.co.kr.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (chanchan.co.kr:root): user
331 Password required for user.
Password:
230 User admin logged in.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>

 

<파일 전송 유형>

ftp 파일 전송 유형의 기본 모드는 ascii로 아스키 파일 전송에 사용된다. 바이너리 모드로 전환하려면 bin 명령을 입력합니다.

ftp> bin
200 Type set to I.

 

<ftp 서버 목록 보기>

ftp 서버에 접속해서 파일 목록을 보려면 ls를 입력합니다.

ftp> ls
227 Entering Passive Mode (127,0,0,1,89,187)
150 Here comes the directory listing.
drwxr-xr-x   20  0      0       4096    Jun 22 16:33 tmp

 

<디렉터리 이동>

cd 명령어를 이용하면 디렉터리를 이동할 수 있습니다.

250으로 시작하는 메시지는 서버에서 보내는 정보입니다.

ftp> cd tmp
250 CWD command successful.

 

<파일 받기와 보내기>

받기는 get 파일명, 보내기는 put 파일명을 입력합니다.

만일 여러 개의 파일을 받거나 보내려면 mget과 mput을 사용합니다.

ftp> get test.tar.gz
local: test.tar.gz remote: test.tar.gz
227 Entering Passive Mode (211,255,253,59,7,250).
150 Opening BINARY mode data connection for genie ( 285 bytes).
226 Transfer complete.
285 bytes received in 0.01 seconds ( 20 Kbytes/s)

 

<현재 로컬 디렉터리 변경>

현재 로컬 디렉터리를 변경하려면 !cd 명령어를 사용합니다.

ftp> !cd /home/file
Local directory now /home/file

 

<ftp로 파일 업로드/다운로드 진행 상황 보기>

ftp로 파일을 올리거나 받은 동안 진행 상황을 보고 싶다면 hash 명령어를 사용합니다. ftp는 1024 바이트의 데이터마다 해시 마크를 출력합니다.

ftp> hash
Hash mark printing on ( 1024 bytes/hash mark).

 

 

  7. host(호스트 정보 보기)

 1) 경로 : /usr/bin/host

 2) 요약 : 도메인 정보를 출력

 3) 사용 방법 : host [옵션] [도메인, IP] [서버]

 4) 옵션

 -서버 : 도메인이나 IP를 검색할 네임 서버를 지정합니다. 지정하지 않으면 시스템에 등록된 도메인 서버를 검색합니다.(/etc/resolv.conf)

 -a : "-t ANY"와 같은 기능

 -d : 디버깅 모드로 출력

 -l zone : zone 아래 모든 시스템을 출력

 -r : 반복처리를 하지 않음

 -t [타입] : 타입을 지정하여 정보를 얻음(A : 호스트 IP 주소, NS : 검색한 호스트의 네임 서버 호스트명, PTR : 도메인네임 포인터, ANY : 타입의 모든 정보)

 -v : 자세한 정보를 출력

 -w : DNS 서버 응답을 기다림

 

 5) 추가 설명

호스트명은 알고 있지만 IP 주소를 모르는 경우 혹은 그 반대의 경우에 사용합니다. 호스트를 이용하면 단지 IP주소 뿐만아니라 해당 호스트명의 하위 호스트명도 검색할 수 있습니다. 호스트는 시스템에 등록된 DNS 서버를 검색합니다. 만약 다른 DNS 서버를 이용하고 싶다면 검색하고 싶은 호스트명 혹은 IP 주소 뒤에 서버의 주소를 지정합니다.

 

-t 옵션으로 검색 타입을 지정하면 chanchan.co.kr 네임 서버의 도에인을 알수 있습니다.

 

예로 www.chanchan.co.kr의 IP 주소를 검색하며 주소 검색에 kornet의 DNS를 이용합니다. 사용하는 DNS 서버의 정보와 검색한 IP 주소가 출력됩니다. 

# host www.chanchan.co.kr kns.kornet.net
Using domain server:
Name: kns.kornet.net
Address: xxx.xxx.xxx.xxx
Aliases:

www.chanchan.co.kr has address 218.237.65.4

 

 

  8. hostid(호스트 ID 지정)

 1) 경로 : /usr/bin/hostid

 2) 요약 : 호스트 ID를 지정하거나 출력

 3) 사용 방법 : hostid [옵션]

 4) 옵션

 --help : 사용법을 출력

 --version : 버전 정보를 출력

 

 5) 추가 설명

hostid 명령어는 현재의 호스트를 16진수 형식으로 출력합니다. 이 정보는 호스트의 고유 번호로 다른 호스트들과 구별되며 주로 인터넷 주소를 부여할 때 사용합니다.

이 값은 시스템 관리자가 변경할 수 있으며 /etc/hostid 파일에 저장됩니다.

# hostid
281e30a4

 

호스트 ID와 네트워크 ID

호스트 ID와 네트워크 ID는 모두 IP를 구성하는 요소입니다.

네트워크 ID 또는 네트워크 주소는 하나의 라우터 아래 동일한 물리적 네트워크에 존재한다는 의미입니다. 다시 말해서 같은 네트워크에 묶여 있는 시스템은 같은 네트워크 ID를 사용합니다. 또한 인터넷에서 이 네트워크 ID는 반드시 유일해야 합니다.

 

호스트 ID(혹은, 호스트 주소)는 네트워크 내에서 워크스테이션, 서버, 라우터, 기타 TCP/IP 등의 각 서버들을 구분하는 역할을 합니다. 각 호스트의 주소는 반드시 네트워크 ID를 기준으로 정확한 값을 가져야 하며 동일한 네트워크 안에서 유일해야 합니다.

 

 

 

  9. hostname(시스템 이름 보기)

 1) 경로 : /bin/hostname

 2) 요약 : 시스템 이름을 확인하고 설정

 3) 사용 방법 : hostname [옵션] 파일명

 4) 옵션

 -a, --alias : 알리아스(alias)명을 출력

 -d, --domain : 도메인명을 출력

 -F, --file 파일명 : 지정한 파일에서 호스트명을 설정

 -f, --fqdn, --long : FQDN(Fully Qualified Domain Name)을 출력

 -h, --help : 사용법 출력

 -i, --ip : 호스트의 IP주소를 출력

 -n, --node : DECnet 노드(node)명을 출력

 -s, --short : 짧은 형식의 호스트명을 출력, FQDN 정보에서 첫 번째 점까지 정보만 출력

 -V, --version : 버전 정보 출력

 -v, --verbose : 호스트 설정이나 호스트명을 자세히 출력

 -y, --yp, --nis : NIS 도메인명을 출력, 또한 지정한 파일에서 NIS 도메인 이름을 설정할 수 있음

 

 

 5) 추가 설명

hostname 명령어는 현재의 호스트명을 보여주거나 지정한 호스트명으로 변경할 수 있습니다. 아래와 같이 옵션이 없는 기본적인 형식은 FQDN 형태의 호스트명으로 출력이 됩니다.

# hostname
chanchan.co.kr

 

예) 호스트명 변경

# hostname chan-father.co.kr
# hostname
chan-father.co.kr

 

<참고사항>

① FQDN

Fully Qualified Domain Name의 약자입니다. 리눅스를 설치하는 과정에서 네트워크 설정 화면에 도메인을 입력하는 창이 있습니다. 이때 도메인은 www.chanchan.co.kr 일까? 아니면 chanchan.co.kr 일까? www은 호스트명, chanchan.co.kr은 도메인명입니다. FQDN은 www.chanchan.co.kr 처럼 호스트명과 도메인명을 모두 합쳐서 부릅니다. 

www chanchan.co.kr www.chanchan.co.kr
호스트명 도메인명 FQDN

 

② IPv6

현재 인터넷 주소 구조는 IPv4에서 IPv6로 변화중입니다. 32비트의 IPv4의 TCP/IP 주소 구조는 인터넷 사용의 폭발적 증가와 함께 그 수가 매우 부족합니다. 그래서 나온 대안이 IPv6입니다. IPv6는 128비트의 주소 구조를 가진 차세대 TCP/IP 표준입니다. IPv6는 32비트의 주소 정보를 가지는 IPv4보다 표현 비트 수로는 4배, 할당할 수 있는 주소 공간으로는 2^96 배가 많은 정보를 가질 수 있어 주소 할당 요구가 증가할수록 관리가 복잡하고, 비효율적인 IPv4의 주소 체계의 한계를 극복할 수 있습니다. 

 

③ DNS 서버

Domain Name System의 약어입니다. IP 주소로 이루어진 숫자 체계의 인터넷 주소는 사람이 이해하거나 기억하기 힘든 단점이 있습니다. 이를 해결하기 위해 쉽게 기억하고 사용할 수 있는 도메인명이 필요했습니다. 물론 각 호스트 시스템은 IP 주소를 찾아야 하므로 IP주소와 도메인명을 중계할 수 있는 시스템도 필요했습니다. 이렇게 호스트명과 IP 주소를 서로 변환하며 중계 역할을 하는 서버를 DNS 서버라고 합니다. DNS 서버는 분산형 데이터베이스로 현재 DNS 서버에서 주소를 찾지 못할 경우 상위의 DNS 서버에 접속하여 찾습니다. DNS는 네트워크 상의 컴퓨터와 컴퓨터를 연결하는 도구이자 동시에 대규모 데이터베이스입니다.

반응형

댓글