현재는 많이 사용하지 않지만 조금 묵은 장비(2003년 이하 장비)의 경우 간혹가다

DAT 테잎을 이용하여 백업을 하는 경우가 종종 있다. 속도도 느리고 불펴하기도 하고

더구나 하드디스크의 가격이 많이 내려가서 요즘에는 그리 선호하지 않는다. 

만약 이런장비를 만나게 되면 다음과 같은 방법으로 처리해 주면된다. 


1. 하드웨어 드라이버 올리기
- DAT 장비들은 대부분 설치되게 되면 /dev/st0 이런식으로 리눅스에서는 설정된다.  만일 설치했는데도

장비가 올라오지 않는다면  다음과 같이 모듈을 탑재한다. 

modprobe st0

2. 백업
- 별도의 명령어가 존재하지 않고 그냥 tar를 이용하여 백업한다. 

tar cvzf /dev/st0 /home


3. 복구
- tar를 이용하여 압축해제 
tar xvzf /dev/st0

'배워서 남주자 > Linux 명령' 카테고리의 다른 글

[vsftp] vsftp 기본 설정  (1) 2018.03.23
[nmap] nmap 사용법  (0) 2018.03.23
[mkisofs] ISO 압축하기  (0) 2018.03.23
[ifconfig] 네트워크 설정  (0) 2018.03.23
[find] find 옵션  (0) 2018.03.23

iso 이미지 생성하기(mkisofs)


리눅스에서 CD를 굽거나 아니면 압축을 할경우에 ISO 이미지를 생성해야 하는 경우가 있다.
윈도우처럼 간단하게 CD를 굽는 툴이 있기는 하지만 버그가 많아 통상적으로 iso이미지를
생성하여 이파일을 Nautilus에서 CD로 굽고 있다.

위와같은 경우에 특정 디렉토리를 ISO로 만들고 싶다면 다음과 같이 하면 간단하게 이미지가 만들어진다.

  ex) mkisofs -o /home/backup.iso /home/backup

=> /home/backup이라는 디렉토리를 backup.iso라는 파일로 만들어 준다.

 

 

 

 

 

# iso 파일 마운트 하기

mount  -o loop  ???.iso   /opt

 

 

 

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

 

ISO 파일은 최근 인터넷의 보급이 확산되면서 데이터 전달 및 공유, 그리고 가상CD 환경 구현 등의 목적으로 많이 사용되고 있는 데이터 파일 포맷이다. 리눅스에서도 OS 배포 및 CD 제작을 위한 용도로 많이 사용되고 있으며 한글과컴퓨터에서 공개되는 오픈에디션 역시 이러한 ISO 이미지 파일 형태로 제공되고 있다. (CD 이미지, DVD 이미지 등에 사용한다.)

ISO 파일은 CD의 데이터들이 하나의 파일로 구성되는 일종의 묶음(이미지) 파일이다. 배포의 편리성과 쉽게 사용할 수 있는 장점을 가지고 있으며 ISO9660의 표준이기도 하다.

 

리눅스를 사용하는 이들은 대부분 이러한 배포판의 ISO 파일을 다운받아 CD로 제작해본 경험이 있을 것이다. (이미지 레코딩 방식)

여기서는 이러한 ISO 이미지를 다운받아 사용하는 방법에 대해 알아보고, ISO 이미지를 직접 만드는 방법에 대해서도 알아보도록 하자.

 

ISO 마운트

리눅스에서는 마운트 기능을 이용하여 iso 이미지 파일을 연결하여 사용할 수 있다.

우선 오픈프로젝트 홈페이지에 있는 "오픈에디션" CD 이미지를 다운로드한 다음 아래와 같은 명령으로 마운트를 시도해보자.

 

# mount -t iso9660 -o loop 파일명.iso 연결할_디렉터리

예: # mount -t iso9660 -o loop HaansoftLinux_OpenEdition_3.0_i386_disc1.iso /media/iso

 

※ 위명령을 사용하기 위해서는 "HaansoftLinux_OpenEdition_3.0_i386_disc1.iso"라는 iso 파일이 있어야 하고, /media 밑에 iso라는 디렉터리가 생성되어 있어야 한다.

 

명령을 살펴보면 일반 mount 명령을 사용하고 있으며, Type에 iso9660을 명시하였고, 옵션으로 loop를 사용한 것을 알 수 있다. iso9660에 명시된 표준 파일시스템 타입을 사용하는 것을 말하며, CD의 이미지 방식이기 때문에 loop 옵션을 사용하였다.

위와 같이 명령을 주면, 마치 CD를 CD-ROM드라이브에 넣은 것과 동일하게 iso 이미지를 마운트하여 활용할 수 있게 된다.

 

ISO 제작

리눅스 운영체제에 포함되어 있는 mkisofs 라는 명령을 사용하면 쉽게 iso 파일을 만들 수 있다.

iso로 만들고자 하는 파일 및 디렉터리들을 특정한 디렉터리에 넣어 두고, 아래와 같이 mkisofs 명령을 입력하자.

(ISO 제작에서는 옵션을 잘 사용해야 하므로, 옵션 부분을 유심히 살펴보자.)

 

# mkisofs [옵션들...] -o 결과물.iso 작업대상_경로

예: # mkisofs -v -J -R -V "HSOE30_i386" -o HSOE30_i386_disc1.iso /var/iso_data/

 

※ 위의 예는 iso로 만들고자 하는 데이터 및 디렉터리를 /var/iso_data 라는 디렉터리 하단에 모두 모아두고, 여러 옵션들을 사용하여 CD 이미지를 제작하는 명령이다. (위의 내용은 어디까지나 예제이다. 위의 옵션만으로 리눅스OS 배포판 CD가 만들어지지는 않는다.)

mkisofs 명령에서 사용되는 대표적인 옵션들은 아래와 같다.

 

[옵션 설명]

-b : boot image

-J : Joliet Directory Records. iso9660 file name

-r : 퍼미션 자동 변경

-T : Translation Table 파일을 갱신(생성)

-V [CD-Volume] : CD Volume 추가

-v : 작업 진행 상황 보이기

-o [File name] : 생성 결과 파일명

-R : Rock


'배워서 남주자 > Linux 명령' 카테고리의 다른 글

[nmap] nmap 사용법  (0) 2018.03.23
[tape 장비] Tape 백업  (0) 2018.03.23
[ifconfig] 네트워크 설정  (0) 2018.03.23
[find] find 옵션  (0) 2018.03.23
[route] network 또는 host 등록하기  (0) 2018.03.23

네트워크의 설정 (NIC, ifconfig)

 

NIC (Network Interface Card)

 

  - 리눅스에서 사용하는 Ethernet Card(eth0, eth1 등) 

 

  - 이더넷을 이용하여 LAN을 구성하기 위해서는 이더넷 카드(NIC)를 사용하며, 리눅스에서 이더넷

     카드는 eth0 , eth1 등의 장치명으로 표시된다. 네트워크 장치명은 /dev 에 등록되어 있지 않으며,

     커널이 장치 검색을 한 후에 장치명를 리턴한다.

  

 

 

ifconfig

 

  - 리눅스 네트워크 설정시 네트워크 인터페이스를 설정하는 명령어.

     NIC 상태확인, 설정, 수정 등에 사용

 

  - 형식

     : ifconfig      netmask    broadcast  

  - 주의

     : ifconfig를 사용하여 네트워크 정보를 설정했을 경우 시스템을 재부팅하면 네트워크 설정 정보는

       모두 사라진다.

 

   - ifconfig로 설정했을 경우 /etc/sysconfig/network-scripts/ifcfg-eth0, /etc/sysconfig/

      network,  /etc/resolv.conf  파일 등을 수동으로 설정해 주어야만 한다.

 

   - 커널에 상주하는 네트워크 장치를 구성하고, 부팅 시에 필요한 장치를 설정하기 위해 사용된다.

 

   - ifconfig 명령어를 이용하여 IP 주소, 넷마스크 등의 네트워크 정보를 설정할 수 있다.

 

   - ifconfig로  IP Address 할당하기

 

         다음과 같은 네트워크 정보를 ifconfig로 할당할 경우

           IP Address              192.168.1.31

           Netmask                  255.255.255.0

           Network Address     192.168.1.0

           Broadcast Address  192.168.1.255

 

         【root@colt357 root】# ifconfig eth0 192.168.1.31 netmask 255.255.255.0 broadcast 192.

                                168.1.255 up

 

    - 작동중인 네트워크 인터페이스 정보

 

       [root@cobee13 etc】# ifconfig  

          Link encap:Ethernet  HWaddr 00:04:23:B5:5D:92  
          inet addr:61.108.83.43  Bcast:61.108.83.127  Mask:255.255.255.128
          inet6 addr: fe80::204:23ff:feb5:5d92/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:12009614 errors:0 dropped:0 overruns:0 frame:0
          TX packets:17836040 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:1905778220 (1.7 GiB)  TX bytes:1895444103 (1.7 GiB)
          Base address:0xec80 Memory:febe0000-fec00000

        

            HWaddr : 각 NIC에 고유한 하드웨어(MAC) 주소이다. IP 주소 충돌 등의 문제가 발생할 때는

                            하드웨어 주소에 할당된 IP Address를 확인한다.

            inet addr : IPv4 방식으로 NIC에 할당된 IP 주소를 의미한다.

            Bcast :  브로드케스트 주소를 나타낸다.

            MTU(Macimum  Transmission  Unit) : 최대 전송 패킷의 크기를 말한다.

            Metric : 라우팅할 때 참조하는 거리에 관한 값으로, '1'은 같은 로컬을 의미한다.

            RX/TX : 받은 패킷에 대한 통계와 보낸 패킷에 대한 통계값을 나타낸다.

            packets :  받거나 보낸 패킷의 총 개수를, error는 그중 오류가 발생한 패킷의 개수를,

                            dropped는 이유를 막론하고 버려진 패킷의 개수를, 그리고 overruns는 이더넷

                            이 처리할 수 없는 속도로 빠르게 자료가 오고 감으로써 그 사이에서 손실된 패킷

                            의 개수를 나타낸다.

'배워서 남주자 > Linux 명령' 카테고리의 다른 글

[tape 장비] Tape 백업  (0) 2018.03.23
[mkisofs] ISO 압축하기  (0) 2018.03.23
[find] find 옵션  (0) 2018.03.23
[route] network 또는 host 등록하기  (0) 2018.03.23
[ps] 프로세스 명령  (0) 2018.03.23

find 는 특정 속성의 파일을 검색할 경우 많이 사용된다.

【 -type c】
        File is of type c:
      b      block (buffered) special
      c      character (unbuffered) special
      d      directory
      p      named pipe (FIFO)
      f      regular file
      l      symbolic link
      s      socket
      D      door (Solaris)

【 -newer   file1 】
    --> file1 보다

 

====================================================================================

【 특정단어 찾기 】

 

 find . -type f -exec grep -H 'babo' {} \; 

-H 는 화일명 표시하기 옵션

 

===================================================================================

【 find 】

find 경로명-리스트 수식

 

유용한 옵션들

옵션들은 결합될 수 있다.

 

-name 화일명        만약 " 화일명" 이 현재 황리 이름과 맞으면 참

-perm octnum         만약 접근 허용이 8진수 octnum과 맞으면 참

-print                    화일 이름을 출력

-type t                  만약 화일의 형이 t 이면 참.    t는 d(디렉토리), f(화일), c(문자 특수화일), b(블럭화일)

-exec 명령어          실행 명령어가 0 종료 상태를 반환하면 참, 현재 경로명을 {}로 대치,  "명령어" 뒤에 "\;" 이 나온다.

-size n                   화일의 크기가 n이면 참 (+n 은 n보다 큰것을, -n은 n보다 작은 것을 찾을 때 사용한다.)

 

 

 

 

==========================================================================

옵션명령 -maxdepth 와 -mindepth에 대한 정의

==========================================================================

1. maxdepth 의 의미는 현재위치에서  지정된 단계까지의 검색 뜻함.

  ex) find  /home  -name 'kiss' -type d -maxdepth 3

       => /home 에서부터  이름이 kiss인 디렉토리를 /home 의 서브디렉토리 3단계까지 찾는다.

 

2. mindepth 의 의미는 지정된 단계에서부터 그 이후의 단계까지 (끝까지)를 의미한다.

    ex)find /home/segio -name 'kiss' -type d -mindepth 3

      =>/home/segio를 기준으로  그 이하 서브3단계에서부터 끝까지  kiss라는 디렉토리를 찾는다.

 

3. 특정 단계의 디렉토리만을 선택하려면 다음과 같이 두 옵션을 모두 사용한다.

     ex) find  /home -name 'kiss' -type f  -maxdepth 2 -mindepth 2

      => /home 에서 2단계에 속하는 위치에서만  이름이 kiss인 디렉토리를 찾는다.

'배워서 남주자 > Linux 명령' 카테고리의 다른 글

[mkisofs] ISO 압축하기  (0) 2018.03.23
[ifconfig] 네트워크 설정  (0) 2018.03.23
[route] network 또는 host 등록하기  (0) 2018.03.23
[ps] 프로세스 명령  (0) 2018.03.23
[date] 시스템 날짜 변경하기  (0) 2018.03.23

route add/del -net/-host network/host address 


route add/del default gw IP dev interface 



'배워서 남주자 > Linux 명령' 카테고리의 다른 글

[ifconfig] 네트워크 설정  (0) 2018.03.23
[find] find 옵션  (0) 2018.03.23
[ps] 프로세스 명령  (0) 2018.03.23
[date] 시스템 날짜 변경하기  (0) 2018.03.23
[split] TAR 분할 압출하기  (0) 2018.03.23

ps aux 상태를 보여주는 STAT상태.. 
(옵션  -a: 모든 유저들의 프로세스 
        -u: 사용자 이름과 시간등 
        -x: 기타 프로세스 


  R - 실행대기상태 
  S - 잠든상태 
  D - 입출력을 기다리는 인터럽트가 불가능한 상태 
  T - 멈춰있거나 흔적이 남아 있는 상태 
  Z - 좀비(zombie) 완전히 죽어 있는 상태 

# 프로세스를 확인하기위해서는 grep 를 함께 쓴다. 
  ps -aux | grep bbsd 
  ps -ef  | grep bbsd 
  이런식으로 찾았으나...pid 번호만을 찾을때는 
  pidof  bbsd 
  이렇게 사용해도 무관하다.... 


#kill 프로세스 (옵션   -9: 강제종료) 
  kill  PID 



리눅스에서 날짜/시간 변경은 다음과 같다.

 

>date 010302132009

 

# 01월 03일 02시 13분 2009년의 순서다...

[SPLIT ] 

하나의 큰파일을 나누기 ----------------------------------------------------- 

   - 덩치 큰 백업(tgz)파일을 특정용량으로 나누기 
      ( CD 제작  또는  용량이 큰 파일를 ftp, wget 전송시 사용) 

ex)  split   -b   사이즈   백업된화일   머릿말 
ex)  split -b 650m  bigsize.tgz small_ 
      - 설명 bigsize.tgz 파일를 650Mb 크기의 small_aa,small_ab,small_ac 
        식으로 생성한다             
      

나워기 파일을 합치기 ------------------------------------------------------- 

ex)  cat  나뉜화일1  나뉜화일2   >   화일이름 
ex)  cat  small_aa small_ab small_ac  >   bigsize.tgz 
      - 나뉘어진 small_aa small_ab등의 파일를 bigsize.tgz의 하나의 파이로 
        생성한다       




==========================================================  
[응용] 큰 용량의 디렉토리를 특정 사이즈의 화일로 나눠 압축하기

==========================================================

/home/test 디렉토리를 100단위로 backupfile_xx 형태로 압축하신다면.. 

tar czvf - /home/bbs | split -b 100m - backupfile_ 

 주의) /home/bbs 를 압축하는 것이 아니고 /home 속에 있는 모든것을 
       압축한다...(압축대상의 경로에서 작업하기바람...옵션이 있다는데 모르겠씀.) 


압축해제는 

ex) cat backupfile_* | tar zxvf -
ex) cat backupfile_* | (cd /;tar -xzvpf - )

풀 때 (cd /;tar -xzvpf - ) 중의 /; 하면 / 디렉으로 옮겨 가서 풀리게 됩니다. 
다른 방법으론

 ex) cat backupfile_* | tar xzvfC -  /home/tmp  ) 
가 있다.

SYNOPSIS
     sftp -1Cv -B buffer_size -b batchfile -F ssh_configv -o ssh_option
               -P sftp_server_path】【-R num_requests】【S program】【-s subsystem | 

                 sftp_server】 host
     sftp 【【user@host【:file 【file】】】
     sftp 【【user@host:dir/】】】
     sftp -b batchfile 【user@host

 

   

 

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

 

○ 접속포트 지정 ( 특정 포트를 정하여 접속하기)

   #sftp  -oPort=6622  ID@site.com

 

 

○ 접속없이 다운로드 하기 ( 다운로드할  파일명을 알고 있을경우...)

   #sftp  ID@site.com:directory/file.txt

 

○ 접속시 특정 경로를 지정하기

   #sftp ID@site.com:directoty/

현장에 나가면 제일 많이 쓰는 장비(?)가 윈도xp깔린 컴퓨터이고 명령프롬프트인데, 그에 관해 정리된 부분이 없는거 같아서 함 정리해봤습니다. 틀린 점이나 수정/추가할 부분 있으시면 리플 달아주세요.

 

1.ping
2.ipconfig
3.nslookup
4.route
5.tracert
6.pathping
7.arp
8.netstat
9.nbtstat
10.hostname
11.ftp
12.telnet
13.tftp
14.getmac
15.ipxroute
16.netsh
17.proxycfg

 

 

 


1. ping
Packet Internet Groper의 약자로서, ip기반 유틸리티이고 icmp프로토콜을 이용합니다. ping에서 보내는 icmp패킷의 data영역은 소문자 abcdefghijklmnopqrstuvw를 반복해서 보냅니다. 핑의 경우, 상대 호스트에 icmp_reply가 열려 있어야 응답이 옵니다. 요즘은 보안상의 이유로 icmp_reply를 막아 놓은 경우가 많습니다.

 

예1) 아래의 경우, icmp_reply가 막혀 있어서 응답이 없습니다.
c:\>ping naver.com

 

예2) 아래의 경우엔 열려있어서 응답이 옵니다.
c:\>ping kr.yahoo.com

 

옵션을 예제로 보여드리겠습니다. 옵션 설명문은 ping /?로 알 수 있습니다.

 

예3)사용자가 ctrl-c로 멈추기 전 까지 무한정 핑을 날립니다.
c:\>ping -t kr.yahoo.com

 

예4)ip주소를 호스트이름으로 바꿔서 핑 날립니다. reverse dns가 설정되어 있는 ip만 가능합니다.

c:\>ping -a 211.115.101.150 (home.vip.krs.yahoo.com의 ip)

 

예5)핑을 10개만 날립니다.

c:\>ping -n 10 kr.yahoo.com

 

예6)보내는 버퍼 사이즈를 정합니다. 최대값은 65500입니다.
c:\>ping -l 2800 kr.yahoo.com
c:\>ping -l 65500 127.0.0.1

최대값은 주로 1hop 거리인 gateway나 루프백 테스트에서만 되는거 같습니다. 호스트마다 받아들이는 최대값이 다르게 되어있어서 그런 것이라 생각하고 있습니다.

 

-l옵션은 외부로 나가는 망이 로드밸런싱 구성이 되어 있을 때, mtu보다 큰 사이즈 (예:2800)를 보내서 정상적으로 되나 테스트 하는 용도로 많이 쓰입니다.

 

예7)보내는 패킷을 분할하지 않습니다. -l옵션과 함께 많이 쓰이는데, 보통 mtu는 1500이므로 icmp헤더 8바이트, ip헤더 20바이트를 뺀 1472이 최대값이 됩니다.
c:\>ping -l 1472 -f 127.0.0.1

 

예8)보내는 패킷의 ttl값을 변경합니다. 예제에서는 hop이 10개 이하인 경로에 대해서만 응답이 올 겁니다.
c:\>ping -i 10 ping.test.com

 

예9)TOS값을 정합니다. ip헤더에서 tos는 4비트만 할당되어 있는데, ping 에러메세지에서는 0~255의 값을 넣으라고 하네요. +_+ 0000,1000,0100,0001등 많이 쓰이는 값을 넣고 이더리얼로 돌려봐도 특별한 변화가 없습니다. 아직 뭔지 모르겠다는 뜻입니다. ^^
c:\>ping -v 1 ping.test.com

 

예10)traceroute처럼 경로를 보여줍니다. 1부터 9까지.
c:\>ping -r 9 ping.test.com

 

예11)경로별 응답온 시간을 보여줍니다. 1부터 4까지.
c:\>ping -s 4 ping.test.com

 

예12)응답이 없을 경우, 다음 시간(밀리초)까지만 기다리고 재시도합니다.
c:\>ping -w 100 null.test.com

 

예13)각 옵션은 짬봉해서 쓸 수 있습니다. 사실 -t옵션과 -l옵션이 제일 많이 쓰이죠. ^^
c:\>ping -t -l 2500 -s 4 test.com

 

 

 

 

 

2.ipconfig
unix계열의 ifconfig와는 달리 그냥 보여주는 기능밖에 못 합니다. dns와 dhcp에 관련된 조작만 조금 할 수 있구요. ㅎㅎ

 

예1)nic별로 nic이름, ip, netmask, gateway정보를 보여줍니다.
c:\>ipconfig

 

예2)wins서버, dns서버, mac주소등 몇 가지 정보를 더 보여줍니다.
c:\>ipconfig /all

 

예3)dhcp 설정일 때, dhcp서버에게 ip 임대 기간을 갱신요청 합니다. 어댑터 미지

정시, 모든 어댑터가 대상합니다.
c:\>ipconfig /release

 

예4)dhcp 설정일 때, dhcp서버에게 ip반납 후 새롭게 요청합니다. 어댑터 미지정시, 모든 어댑터가 대상합니다.
c:\>ipconfig /renew

 

예5)dns캐시 목록을 보여줍니다.
c:\>ipconfig/displaydns

 

예6)dns캐시 목록을 지웁니다. 주로 dns관련 문제로 dns서버를 바꿨을 때, 이 명령 후 테스트합니다.
c:\>ipconfig /flushdns

 

예7)ip주소를 갱신하고 ddns에 레코드를 등록합니다.
c:\>ipconfig /registerdns

dhcp갱신은 ipconfig말고도 시작->제어판->네트워크연결->nic우클릭->사용 안 함->사용. 이런 식으로 갱신해도 됩니다.

 

 

 

 

3.nslookup
name server lookup의 약자이고, dns질의를 해 보는 udp53포트 기반 유틸리티입니다. 네트워크 문제의 상당수가 dns관련 문제이니까 dns서버 동작원리에 대해서 알아두면 많은 도움이 됩니다.

 

예1)도메인에 대한 ip를 질의합니다.
c:\>nslookup www.test.com

 

예2)ip에 대한 reverse도메인 질의를 합니다.
c:\>nslookup 192.168.0.1

 

예3)옵션을 줘서 질의합니다.
c:\>nslookup
>www.test.com
server: 168.126.63.1
address:168.126.63.1

name:www.test.com
address:192.168.0.1

>192.168.0.1
server: 168.126.63.1
address:168.126.63.1

name:www.test.com
address:192.168.0.1

>server 10.0.0.1 (기본 질의 서버를 바꿉니다)
Default Server: ns.test.com
address: 10.0.0.1

>set all
(현재 설정되어 있는 기본 질의 옵션들을 보여줍니다)
>set type=any(기본 질의 타잎을 A(호스트)에서 ANY(도메인에 해당하는 모든 정보)

로 바꿉니다)
>test.com
test.com   internet address=192.168.0.1 (루트도메인 정보입니다)
test.com   MX preference = 10, mail exchanger = mail.test.com (메일서버가 이

중화되어 있을 경우, 여러 개의 값이 나옵니다.
test.com   nameserver = ns1.test.com (1차 네임서버)
test.com   nameserver = ns2.test.com (2차 네임서버)
test.com
      primary name server = ns1.test.com
      responsible mail addr = root.test.com
      serial = 2007010101 (임의의 숫자.보통 도메인 존 수정한 날짜로 합니다. yyyymmddhh)
      refresh = 28800 (초단위.갱신주기)
      retry = 14400 (초단위.갱신 실패시 재시도 주기)
      expire = 360000 (초단위.갱신 실패시 만료일)
      default TTL = 0

test.com   text =
      "v=spf1 ip4:192.168.0.10 -all" (화이트 도메인 관련 정보입니다. 메일서버 정책에 따르겠다는 설정)


test.com   nameserver = ns1.test.com
test.com   nameserver = ns2.test.com
mail.test.com internet address=192.168.0.10
ns1.test.com internet address=192.168.0.1
ns2.test.com internet address=192.168.0.2

>set type=mx (메일서버 질의)
>test.com
test.com   MX preference = 10, mail exchanger = mail.test.com
test.com   nameserver = ns1.test.com
test.com   nameserver = ns2.test.com
mail.test.com internet address=192.168.0.10
ns1.test.com internet address=192.168.0.1
ns2.test.com internet address=192.168.0.2

>set type=A (기본값. 호스트 질의)
>test.com
server: ns1.test.com
address:192.168.0.1

name:www.test.com
address:192.168.0.1

>?
가능한 옵션들이 다 나옵니다.

 

 

 

 

4.route
현재 호스트의 라우팅 보여주기 및 경로 재설정하는 유틸입니다. 라우팅이라고 하면 의아해 하시겠지만 ip프로토콜이 탑재된 호스트는 기본적으로 라우팅 기능을 할 수 있습니다.

 

예1)현재 라우팅 목록을 보여줍니다.
c:\>route print

 

예2)192로 시작하는 목록, 100이 포함되어 있는 목록을 보여줍니다.
c:\>route print 192*
c:\>route print *100*

 

예3)10.0.0.0/16을 목록에 추가합니다.
c:\>route add 10.0.0.0 mask 255.255.0.0 192.168.0.1 metric 10

 

예4)10.0.0.0/16의 메트릭을 변경합니다.
c:\>route change 10.0.0.0 mask 255.255.0.0 192.168.0.1 metric 20
(메트릭 변경은 윈도 네트워크정보의 tcp/ip설정 고급란에서도 가능합니다)

 

예5)기본 경로를 목록에 추가합니다.
c:\>route add 0.0.0.0 mask 0.0.0.0 192.168.0.1
(메트릭을 지정하지 않으면 기본메트릭20이 적용됩니다)
(기본 경로가 2개일 경우 기본 게이트웨이 산정은 메트릭에 의존하고, 메트릭이 동

일할 경우 랜덤하게 결정됩니다^^)

 

예6)추가된 목록 10.0.0.0/16을 지웁니다.
c:\>route delete 10.0.0.0 mask 255.255.0.0 192.168.0.1 metric 20

 

예7)추가된 라우팅 정보와 기본경로를 지웁니다. 라우터가 아니라 호스트일 경우,

이 명령어 후에는 반드시 기본 경로를 지정해줘야 합니다.
c:\>route -f

 

예8)추가 라우팅 목록이 재부팅 후에도 남아있도록 합니다.
c:\>route -p add 10.0.0.0 mask 255.255.0.0 192.168.0.1 metric 10

 

 

 

5.tracert
상대방 호스트까지 가는 경로를 보여줍니다. icmp를 쓰므로, 역시 ip기반 유틸리티입니다.
원리는 ttl(time to live)값을 1에서부터 1씩 늘려가면서 목적지에게 icmp type 8 echo request를 보내서 라우터마다 ttl값이 만료됐다는 메시지를 받음으로써, 각 hop마다의 라우터를 확인할 수 있습니다. 가끔 라우터-라우터 구간의 사설ip로도 응답이 오는 것도 이 때문입니다.

 

이것도 역시 보안상의 이유로 icmp type 0 echo reply나 icmp type 11 ttl exceeded를 비활성화 해 놓은 구간에서는 응답이 없어서 그 구간은 * 혹은 request time out으로 표시됩니다.

 

예1)www.test.com까지의 경로 확인
c:\>tracert www.test.com

 

예2)주소를 호스트이름으로 바꾸지 않는 옵션입니다. 처리속도가 엄청나게 늘어나므로 꼭 사용해주세요. ^^
c:\>tracert -d 192.168.0.1

 

예3)최대 홉 수를 10으로, 각 구간의 응답대기 시간을 500ms로 설정합니다.
c:\>tracert -h 10 -w 500 192.168.0.1

 


 

6.pathping
traceroute와 ping의 짬봉+통계치입니다. ^^ icmp를 쓰므로, 역시 ip기반 유틸리티입니다.

 

예1)이름변환 없이 진행합니다. (tracert의 -d옵션과 같음)
c:\>pathping -n 192.168.0.1

 

예2)최대 홉 수를 10으로, 각 구간의 응답대기 시간을 500ms로 설정합니다.
c:\>pathping -h 10 -w 500 192.168.0.1

 

예3)각 ping사이의 대기시간을 100ms로, 보내는 패킷의 source ip를 192.168.0.10으로 합니다
c:\>pathping -p 100 -i 192.168.0.10 192.168.0.1

 

예4)각 구간 사이의 layer-2 priority tag를 검사합니다. (802.1p QoS on the mac level)
c:\>pathping -t 192.168.0.1

 

 

 


7.arp
arp 캐시 테이블을 보여주고, 조정하는 유틸입니다.

 

예1)현재의 arp 캐시 테이블을 보여줍니다. 기본 저장기간은 5분이니까, 보여지는 목록은 5분동안의 통신된 내역입니다.
c:\>arp -a

 

예2)특정 호스트의 arp 테이블을 지우거나 전부 지웁니다.
c:\>arp -d 192.168.0.100
c:\>arp -d 192.168.*
c:\>arp -d 192.168.0.1*
c:\>arp -d *

 

예3)수동으로 arp 테이블에 호스트를 올립니다.
c:\>arp -s 192.168.0.200 aa-bb-cc-dd-ee-ff

 


 

 

8.netstat
소켓 인터페이스를 통해 연결되어진 내용을 보여줍니다. 아주 중요한 명령어 중에 하나죠.

 

예1) 주소 및 포트번호를 이름변환 없이 숫자로 보여주면서 모든 연결 및 대기 포트를 표시합니다. 제일 많이 쓰이죠. ^^
c:\>netstat -na

 

예2) 이더넷 통계를 보여줍니다. 물리계층 에러도 확인할 수 있어서 좋습니다
c:\>netstat -e

 

예3) 사용되는 프로토콜별로 통계를 보여줍니다. 보통 tcp,ip,udp,icmp를 보여줍니다.
c:\>netstat -s

 

예4) 연결을 만드는데 주관한 프로세스의 실행 프로그램을 모두 보여줍니다.
c:\>netstat -ba


예5) 모든 연결 중에 특정 프로토콜만 보여줍니다.
c:\>netstat -a -p TCP
c:\>netstat -a -p UDP

 

예6) route print와 같은 결과물을 보여줍니다.
c:\>netstat -r

 

 

 

9.nbtstat
NetBIOS인터페이스와 관련된 정보를 보여줍니다.

 

예1)Netbios 이름으로 ip와 mac정보등을 보여줍니다.
c:\>nbtstat -a 테스트서버

 

예2)ip주소로 NetBIOS이름, mac정보등을 보여줍니다.
c:\>nbtstat -A 192.168.0.1

 

예3)현재 시스템의 NetBIOS 이름 캐시와 해당IP를 보여줍니다.
c:\>nbtstat -c

 

예4)현재 시스템의 NetBIOS 이름들을 보여줍니다.
c:\>nbtstat -n

 

예5)arp -d *처럼 모든 넷바이오스 이름 캐시를 지웁니다.
c:\>nbtstat -R

 

예6)네트워크를 통한 이름처리 통계를 보여줍니다. 여기서 나오는 Name Server는 WINS서버를 뜻합니다.
c:\>nbtstat -r

 

 

 

 

10.hostname
현재 시스템의 호스트 이름을 보여줍니다. 리눅스에서는 호스트 이름도 바꾸는 기능이 있지만, 윈도에선 걍 보여주기만 합니다. ^^

예)주로 키보드 만지다가 마우스 잡기 귀찮을 때 쓰는 명령어입니다. ㅋㅋ
c:\>hostname

 

 


11.ftp
어떠한 이유에 의해서 윈도우 유틸리티를 사용 못 할 때가 있습니다. 그런 때를 대비해서 텍스트 모드의 사용법도 알아두면 요긴하게 사용됩니다. tcp20,21 포트 기반 유틸리티입니다.

 

c:\>ftp
ftp>open 192.168.0.1 (해당 호스트로 접속합니다. 불행히도 21번 포트를 제외한 다른 포트 지정은 안됩니다)
user: anonymous (익명연결의 경우)
password: 패스워드 혹은 익명일 경우 아무 문자나.
ftp>ls 혹은 dir (원격지 디렉토리 목록을 보여줍니다)
ftp>cd temp (원격지의 하위 디렉토리로 이동합니다)
ftp>get test.exe (파일을 다운로드합니다)
ftp>lcd \data (로컬 시스템의 경로를 바꿉니다)
ftp>put upload.exe (파일을 업로드합니다)
ftp>mget test1.exe test2.exe test3.exe (파일을 여러 개 다운합니다)
ftp>mput upload1.exe upload2.exe (파일을 여러 개 업로드합니다)
ftp>ascii (파일 전송 기본 모드를 ascii로 바꿉니다)
ftp>binary (파일 전송 기본 모드를 binary로 바꿉니다)
~윈도는 기본이 binary이고, 리눅스는 기본이 ascii입니다. 참고하세요~
ftp>bye (접속종료)

 

 

 


12.telnet
핑과 더불어 네트워크 엔지니어들이 제일 많이 쓰는 유틸리티라 잘 아시겠죠. ^^ 보통은 tcp25포트 기반입니다.

예1)해당 호스트에 포트 50으로 접속
c:\>telnet 192.168.0.1 50

 

예2)웹브라우저 접속을 못 하는 상황에서 해당ip의 정보 조회를 할 때

c:\>telnet ipwhois.nic.or.kr 43

엔터후에 화면이 clear되는데, 조회하고자 하는 ip를 입력 후 엔터치면 해당 ip에 대한 정보가 화면에 나오고 텔넷접속은 종료됩니다. 웹페이지에 보여지는 내용 기준으로 <br>되기 때문에 텔넷 윈도우를 크게 키운 후 사용하시면 좋습니다.

 


13.tftp
시시한(?) ftp입니다. ^^ udp 67 기반입니다.

 

예1)해당 호스트의 test.exe파일을 binary형식으로 다운로드
c:\>tftp -i 192.168.0.1 GET test.exe

 

예2)현재 시스템의 test.exe파일을 binary형식으로 원격지에 test10.exe으로 업로드.
c:\>tftp -i 192.168.0.1 PUT test.exe test10.exe

 

 


14.getmac
rpc프로토콜을 이용하여 원격지에 있는 호스트의 mac주소를 얻어내는 명령어입니다. 해당 호스트의 계정정보가 필요합니다.

출력 결과는 mac주소와 nic의 디바이스 정보가 나오고, tcp135와 tcp2041으로 통신합니다.

 

예) 원격지 호스트가 test.com(ip나 netbios이름으로 해도 됨) 이고, id:test pw:testpw이라면,
c:\>getmac /S test.com /U test /P testpw
c:\>getmac /S 192.168.10.1 /U test /P testpw

 

 

15.ipxroute
제 pc에 ipx프로토콜도 없구, ipx쪽은 잘 모르는데 이런 명령어가 있길래 그냥 적어만 봤습니다. ^^

 

 


16.netsh
네트워크 관련 설정 등을 해 주는 유틸리티입니다. 윈2003의 RRAS와 연계된 많은 기능들이 있지만, 일반적으로는 노트북 사용자처럼 ip주소를 여러 번 변경하는 상황에 응용해서 많이 쓰입니다.

 

예1) 아래와 같이 만들고 static1.bat만 실행해주면 ip가 바뀝니다.
c:\>copy con static1.bat
netsh interface ip set address "로컬 영역 연결" static 192.168.0.10 255.255.255.0 192.168.0.1
netsh interface ip set dns name="로컬 영역 연결" source=static 168.126.63.1 register=PRIMARY
^Z


예2) 아래와 같이 만들고 dhcp.bat만 실행해주면 dhcp로 바뀝니다.
c:\>copy con dhcp.bat
netsh interface ip set address "로컬 영역 연결" source=dhcp
netsh interface ip set dns name="로컬 영역 연결" source=dhcp
^Z

 

예3)도움말 윈도 창이 뜨면서 gui환경으로 기본적인 네트워크 자가진단을 하고 결과를 알려줍니다.
c:\>netsh diag gui

 

 


17.proxycfg
웹 브라우저의 프록시 설정을 바꿔줍니다. 웹 브라우저에서 프록시 서버가 사용 가능으로 체크되어 있어야 동작합니다.

 

예1) 프록시 서버가 proxy.test.com. ip는 192.168.100.1이라면,
c:\>proxycfg -p proxy.test.com
c:\>proxycfg -p 192.168.100.1

 

예2) 웹 브라우저의 프록시 설정값대로 바꿔줍니다.
c:\>proxycfg -u

+ Recent posts