'분류 전체보기'에 해당되는 글 152건
- 2010.11.16 리눅스에서 임의의 파일 생성 2
- 2010.09.27 FTP 이란? File Transfer Protocol 2
- 2010.07.16 바탕화면 정리 및 폴더 묶음 fences
- 2010.07.14 리눅스 VNCSERVER 설정 방법 3
- 2010.06.23 솔라리스 10 NIC 의 speed / duplex 변경 방법
- 2010.05.31 텍스트 파일을 잘라보자. split
- 2010.05.25 파일비교 스크립트 5 2
- 2010.04.22 파일들의 확장자만 변경
- 2010.04.21 공유기 기능 - 고급기능4 ( WOL )
- 2010.04.19 리눅스 시스템의 부팅시 파일무결성 체크 강제로 하기
- 2010.04.06 공유기기능 - 고급기능3 TwinIP
- 2010.03.30 리눅스 dmesg 를 통한 eth 포트의 down / up 구분
- 2010.03.29 리눅스 32bit 와 64bit 구분
- 2010.03.17 공유기 기능 - 고급기능2 ( DMZ )
- 2010.03.03 공유기 기능 - 고급기능1 ( 포트포워딩 )
- 2010.02.25 공유기 - 기본지식편
- 2009.12.23 28. CentOS 에서 yum 수행시 repo 사이트 추가
- 2009.12.22 15. 텍스트 파일 포맷 변경 2
- 2009.12.18 14. 지난 파일 압축하고 삭제하기 2
- 2009.12.18 브리지와 스위치의 차이점 1
2010. 11. 16. 17:32
리눅스에서 임의의 파일 생성
2010. 11. 16. 17:32 in 내가쓰는리눅스 강좌
용량없는 파일을 생성하는 것은 touch 명령어를 사용하여 생성한다.
[root@localhost ~]# touch a
[root@localhost ~]# ls -l a
-rw-r--r-- 1 root root 0 11월 16 17:31 a
특정한 용량을 지정하여 파일을 생성하는 것은 다음과 같이 한다.
# dd if=/dev/zero of=/home/tongseob/100M.dd bs=100M count=1
1+0개의 레코드를 입력하였습니다
1+0개의 레코드를 출력하였습니다
# ls -l 100M.dd
-rw-r--r-- 1 root root 104857600 1월 17 18:55 100M.dd
1+0개의 레코드를 입력하였습니다
1+0개의 레코드를 출력하였습니다
# ls -l 100M.dd
-rw-r--r-- 1 root root 104857600 1월 17 18:55 100M.dd
'내가쓰는리눅스 강좌' 카테고리의 다른 글
리눅스 여유 메모리 체크 관련 (2) | 2011.05.17 |
---|---|
리눅스 VNCSERVER 설정 방법 (3) | 2010.07.14 |
텍스트 파일을 잘라보자. split (0) | 2010.05.31 |
리눅스 시스템의 부팅시 파일무결성 체크 강제로 하기 (0) | 2010.04.19 |
리눅스 dmesg 를 통한 eth 포트의 down / up 구분 (0) | 2010.03.30 |
28. CentOS 에서 yum 수행시 repo 사이트 추가 (0) | 2009.12.23 |
27. CentOS 에서의 한글 설정 (3) | 2009.11.24 |
26. ethtool 사용하기 speed 와 duplex 변경 (6) | 2009.11.23 |
25. sort 명령어 (2) | 2009.11.05 |
24. tar 압축파일에 관해서 (0) | 2009.09.15 |
2010. 9. 27. 15:47
FTP 이란? File Transfer Protocol
2010. 9. 27. 15:47 in 네트워크 기초
1. FTP 란 무엇인가?
우리가 자주 사용하지만 막상 인식을 하지는 잘 못하는 프로토콜이다.
웹상에서 파일을 PC로 다운받거나 또는 업로드를 할 때에 FTP 를 사용하게 됨에도 불구하고 말이다.
FTP 는 말 그대로 파일을 전송하기 위한 TCP/IP 프로토콜이다. 마치 HTTP 가 웹을 해석하고 전달하기 위한 프로토콜인 것처럼 FTP 는 파일을 주고 받기 위해서 필요한 프로토콜인 것이다.
FTP 는 서버와 클라이언트로 나눠진다.
FTP 서버는 항상 TCP Port 21 로 listen 하고 있어서 서버 자신에게로 오는 ftp 클라이언트들의 요청을 받아 들일 준비를 늘 하고 있는 녀석이다.
FTP 클라이언트는 많은 방법으로 FTP서버에 접속할 수 있다 그 상세한 방법은 아래에서 살펴보자.
2. FTP 사용방법은?
FTP를 사용하는 방법은 여러가지가 있다. 즉 자신이 알고 있는 방법으로 사용하면 된다. 그 어느 것을 사용하더라도 거의 문제가 없다.
(1) IE ( 인터넷익스플로러) 를 사용하는 방법
IE 의 주소창의 주소들을 보면 http://~~ 라고 표시될 것이다. 여기서 http 대신에 ftp 로 바꿔서 쓰면 ftp 로 서버에 접속이 가능하게 된다.
(2) FTP 전용 클라이언트를 사용하는 방법
FTP 클라이언트 소프트웨어를 PC에 설치해서 서버에 접속하는 방법이 있다. 흔히들 사용하는 프로그램으로는 알FTP 라든가 아니면 Filezilla 같은 프로그램을 설치해서 원하는 서버에 접속해서 파일을 주고 받을 ( 업 / 다운 로드) 수가 있다.
FTP 클라이언트 프로그램들은 많이 있으니 기호에 맞게 설치해서 사용하면 무리가 없을 것이다.
(3) command 창을 이용하는 방법
윈도우에서는 아직 남아잇는 까만창 ( cmd = command ) 을 이용해서 CLI ( command line interface ) 방식으로 FTP 서버로 접속할 수 있다.
바로 위의 (1) 과 (2) 의 방법은 GUI ( Graphic User Interface ) 방식으로 마우스의 사용이 절대적으로 필요한 반면에, 이 방법은 마치 리눅스나 유닉스처럼 명령어 키보드 만으로 FTP 사용이 가능하고, FTP 의 명령어들을 알고 있어야 한다.
처음사용자는 어렵겠지만 나중에 익숙해지면 오히려 이 방식이 더 파워풀하고 강력할 것이다.
3. FTP의 장점은?
순수하게 FTP 로 전송하는 프로토콜만 사용하면 오히려 웹속에 숨어있는 링크를 클릭해서 FTP 로 오게 만들어지고, 그것을 클릭하고 나서 기다리고 전달되는 것보다는 오히려 FTP클라이언트 프로그램을 통해서 파일을 옴기는 것이 훨씬 더 속도가 빠르고 효율적이 될 수도 있다는 것을 알아야 한다.
( 물론 IE 속에 FTP 를 사용할 수 있도록 하는 프로그램이 숨겨져 있다는 것에서는 같지만 FTP전용프로그램보다는 속도가 떨어질 것이다. )
4. 그럼 SFTP 란 ?
SFTP 란 Secure FTP 즉 보안이 강화된 FTP 라고 보면 되겠다. SSH ( Secure Shell ) 을 통해서 파일을 전송하는 프로토콜이다. 리눅스를 설치하게 되면 SSH 는 기본적으로 설치가 되고 보통 SSH 는 터미널로 리눅스에 원격으로 접속하는 프로토콜인데 SSH 를 통해서 FTP 를 구현한 것이다.
파일질라 같은 FTP클라이언트는 SFTP 까지 지원을 한다.
5.그럼 TFTP 란 ?
TFTP 란 Trivial FTP 를 뜻하고 FTP 나 SFTP 와 다르게 UDP 를 사용한다. UDP 는 전송 도중에 데이터가 유실될 가능성이 높고, 사용자에게 디렉토리를 보여주지 않을 때 주로 사용한다.
아무래도 장비들의 펌웨어 업그레이드 같은 때에 이런 TFTP 가 예전에 자주 사용되었다.
사용법은 어떤 방법을 사용해도 무관하다. 사용자가 편하게 사용하는 방법을 통해서 사용하면 될 것이다.
하지만 서버관리자라면 터미널 상에서 FTP 를 사용하는 것이 더 익숙하고 편하게 느껴질 것이다.
SSH 상에서 FTP 를 접속하게 되면 커서의 모양이 꺽쇠모양 ( > ) 으로 바뀌게 되고 FTP 상태인 것이 표시된다.
여기서 FTP 명령어들을 확인하려면 help 만 치면 FTP 에서 사용가능한 명령어 들이 나오게 된다.
중요한 명령어는 일단 리눅스에 올라가 잇는 FTP 로 접속했을 때 현재 접속한 디렉토리의 파일들을 보고자 한다면
ls -l 이란 명령어를 통해서 확인하고
bin 또는 ascii 라는 명령어를 통해서 바이너리방식으로 전송할 것인지 아스키방식으로 전송할 것인지 결정
hash 란 명령어를 통해서 파일 전송시 진행정도를 ######## 표시를 나타낼 지의 여부 ( 토글 )
모든 작업을 끝내고 FTP 를 종료시 bye 명령어를 통해서 FTP 서버와 연결을 끊음.
prompt 명령어로 파일 전송시 확인 ( y / n ) 여부 물어보도록 할 것인지 말 것인지 ( 토글 )
mget 명령어로 여러개의 파일을 하나의 명령어로 다운로드
mput 명령어로 여러개의 파일을 하나의 명령어로 업로드
이런 정도만 안다면 충분히 FTP 를 사용함에 있어 부족함은 없을 것이다. ^^
'네트워크 기초' 카테고리의 다른 글
공유기 기능 - 고급기능4 ( WOL ) (0) | 2010.04.21 |
---|---|
공유기기능 - 고급기능3 TwinIP (0) | 2010.04.06 |
공유기 기능 - 고급기능2 ( DMZ ) (0) | 2010.03.17 |
공유기 기능 - 고급기능1 ( 포트포워딩 ) (0) | 2010.03.03 |
공유기 - 기본지식편 (0) | 2010.02.25 |
브리지와 스위치의 차이점 (1) | 2009.12.18 |
OSI 7 layer 설명 (2) | 2009.12.18 |
네트워크 관련 볼것 (0) | 2009.11.27 |
2010. 7. 16. 14:12
바탕화면 정리 및 폴더 묶음 fences
2010. 7. 16. 14:12 in 쓸만한유틸
윈도우 바탕화면에 많은 자료를 두는 내 스타일에 맞는 프로그램인 것 같다.
일단 소개 동영상을 한번 보면 쉽게 이해가 갈 것이다.
http://www.stardock.com/products/fences/screenshots.asp
데스크탑에 설치해 봐야지.ㅋ
다운로드는 아래의 링크 사용
http://www.stardock.com/products/fences/downloads.asp
일단 소개 동영상을 한번 보면 쉽게 이해가 갈 것이다.
http://www.stardock.com/products/fences/screenshots.asp
데스크탑에 설치해 봐야지.ㅋ
다운로드는 아래의 링크 사용
http://www.stardock.com/products/fences/downloads.asp
'쓸만한유틸' 카테고리의 다른 글
크롬 확장기능 : Bulk URL Opener (0) | 2024.11.15 |
---|---|
아웃룩 2013 버전 메일 보내고 자동으로 받은편지함에 복사본 들어가도록 (0) | 2024.11.15 |
RGB 추출기 (0) | 2012.12.21 |
무료 PDF 변환 프로그램 (0) | 2012.12.05 |
Cygwin 윈도우에서 리눅스환경을 누려보자 (4) | 2009.04.20 |
SFTP 와 FTP 용 클라이언트 Filezilla (0) | 2009.01.21 |
MP3Gain : mp3파일의 음량을 일정하게 조정 (1) | 2008.09.26 |
GMT 별로 알려주는 프로그램 (단순히시계) (0) | 2008.09.11 |
파이어폭스 2.0 에서 자바애플릿 플러그인 설정방법 (2) | 2008.02.28 |
메모리 적게 차지하는 MP3 플레이어 (1) | 2007.08.18 |
2010. 7. 14. 15:27
리눅스 VNCSERVER 설정 방법
2010. 7. 14. 15:27 in 내가쓰는리눅스 강좌
VNCSERVER 는 외부에서 원격으로 GUI 환경으로 접속이 가능하도록 만들어주는 프로그램으로
리눅스에서는 서버가 운영되고 외부의 PC 에서는 vncviewer 라는 클라이언트를 통해서
접속이 가능하게 된다.
1. CentOS 에서는 rpm 으로 설치가 가능하다.
2. 최초 시작시에는 다음과 같이 터미널에 입력해준다.
이때에 사용자의 VNC 로 접속할 때 사용될 패스워드를 넣어주어야 하고
나중에 vncpasswd 라는 명령어로 패스워드 변경할 수 있다.
아래는 root 에서 수행했으니 root 의 vncpasswd 가 생성되는 것이다.
만약 다른 계정으로 했다면 그 계정의 vncpasswd 가 실행되게 된다.
3. 각 계정 사용자의 홈디렉토리에 숨김 디렉토리가 생성된다. ( .vnc )
그 안의 xstartup 이라는 파일을 vi 로 열어서 수정해야 한다.
파일을 열어서 위의 빨간색 두 라인을 주석해제 ( 맨 앞에 # 을 삭제 ) 해서
적용이 되도록 만들어준다.
만약 이 과정을 빼먹으면 나중에 vnc viewer 로 접속햇을 때 원하지 않는 이상한 화면(아무것도 없는 화면)을 볼 지도 모른다.
4. 원격접속시 사용될 해상도와 어느 유저로 접속할 것인지를 결정해야 한다.
root 로 로그인한 상태에서 /etc/sysconfig/vncservers 라는 파일을 열어서 편집해야 한다.
여기서 맨 마지막 두 라인이 바로 예제이다.
이것을 그대로 복사해서 라인을 추가하고
VNCSERVERS 라는 라인에서는 사용하고자하는 포트와 유저를 지정하게 된다.
또한 두번째 라인의 VNCSERVERARGS 라인은 vncviewer 를 통해서 접속했을 때 사용하고자 하는 해상도를 지정하게 된다.
물론 새로 추가하는 라인들은 앞의 # 을 제거해서 주석해제 처리 해주어야 한다.
위에서는 root 에서 만들었지만 이것을 다른 특정 유저에서 사용하게 할려면
특정 사용자 아이디로 로그인하고 나서 위의 과정을 반복해준 다음에
예를 들어 test 라는 계정이 이미 있고 그 계정으로 VNCSERVER 를 운영할려면 아래와 같이 수정해서 넣어준다.
5. 복수의 사용자별로 VNC 서버를 설정하는 법
만약 여러 계정에서 사용하고자 한다면 VNCSERVERS 라인에 추가를 해주어야 한다.
설정이 완료되었다면 VNCSERVER 를 재시작해야 한다.
6. VNCSERVER 재시작
리눅스에서는 두가지 방법을 통해서 서비스 재시작이 가능하다.
두가지 모두 결과는 같다.
만약 VNCSERVER 를 전체적으로 중단하고 싶다면 맨 뒤쪽의 restart 대신에 stop 을 넣고
시작을 원하면 start 를 넣으면 된다.
만약 특정 유저들 중에서 하나만 중지하고자 할 때에는
그 유저로 로그인 한뒤에 display 번호까지 지정해서 KILL 하면 된다.
6. 원격PC(윈도우) 에서 vncviewer 를 설치해서 접속
VNCVIEWER 프로그램은 프리웨어로 윈도우PC 에 설치해서 접속이 가능하다.
REALVNC 를 사용하든지 TightVNC 를 사용하든지 마찬가지 이다.
어느것을 선택해도 좋다.
아래와 같이 입력해서 접속한다.
이때 아이피의 뒤에 적어주는 것은 위의 4번 과정에서 설정했던 포트번호이다.
다른 포트번호도 설정했다면 해당 포트번호를 적어주면 설정한 유저로 접속되는 것을 확인할 수 있을 것이다.
참고로 display 번호가 바로 내가 말한 포트번호이다.
VNC서버는 TCP포트를 5900 부터 시작하는데 display 번호가 1 이면 5901 포트를 사용해서 리눅스는 LISTEN 상태로 대기하고 있게 된다.
이것은 CentOS 터미널 상에서 netstat -na | grep 590* 을 쳐보면 LISTEN 상태인 것을 직접 확인할 수 있다.
** 추가 : VNC 서버 접속시 해상도 조절이 되지 않을 때.
추가적으로 VNC 의 해상도 조절이 잘 안되는 경우에는 /etc/init.d/vncserver 라는 스크립트를 직접 수정해서
VNC서버 실행되는 조건을 직접 수정해 버리는 방법도 있다.
centos 기준으로 원래는 "${VNCSERVERARGS[${DISP}]}" 의 변수가 들어가 있는 부분을
아래처럼 -geometry 1280x800 로 바꿔버리니 VNC서버가 시작될 때 해상도를 아래 해상도로 지정해서 띄우게 됨.ㅋ
리눅스에서는 서버가 운영되고 외부의 PC 에서는 vncviewer 라는 클라이언트를 통해서
접속이 가능하게 된다.
1. CentOS 에서는 rpm 으로 설치가 가능하다.
yum -y install vncserver
2. 최초 시작시에는 다음과 같이 터미널에 입력해준다.
이때에 사용자의 VNC 로 접속할 때 사용될 패스워드를 넣어주어야 하고
나중에 vncpasswd 라는 명령어로 패스워드 변경할 수 있다.
아래는 root 에서 수행했으니 root 의 vncpasswd 가 생성되는 것이다.
만약 다른 계정으로 했다면 그 계정의 vncpasswd 가 실행되게 된다.
[root@localhost ~]# vncserver :1
You will require a password to access your desktops.
Password:
Verify:
xauth: creating new authority file /home/bjh/.Xauthority
New 'localhost:3 (bjh)' desktop is localhost:1
Creating default startup script /home/bjh/.vnc/xstartup
Starting applications specified in /home/bjh/.vnc/xstartup
Log file is /home/bjh/.vnc/localhost:1.log
You will require a password to access your desktops.
Password:
Verify:
xauth: creating new authority file /home/bjh/.Xauthority
New 'localhost:3 (bjh)' desktop is localhost:1
Creating default startup script /home/bjh/.vnc/xstartup
Starting applications specified in /home/bjh/.vnc/xstartup
Log file is /home/bjh/.vnc/localhost:1.log
3. 각 계정 사용자의 홈디렉토리에 숨김 디렉토리가 생성된다. ( .vnc )
그 안의 xstartup 이라는 파일을 vi 로 열어서 수정해야 한다.
[root@localhost .vnc]# cat xstartup
#!/bin/sh
# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
twm &
#!/bin/sh
# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
twm &
파일을 열어서 위의 빨간색 두 라인을 주석해제 ( 맨 앞에 # 을 삭제 ) 해서
적용이 되도록 만들어준다.
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc
만약 이 과정을 빼먹으면 나중에 vnc viewer 로 접속햇을 때 원하지 않는 이상한 화면(아무것도 없는 화면)을 볼 지도 모른다.
4. 원격접속시 사용될 해상도와 어느 유저로 접속할 것인지를 결정해야 한다.
root 로 로그인한 상태에서 /etc/sysconfig/vncservers 라는 파일을 열어서 편집해야 한다.
[root@localhost sysconfig]# cat vncservers
# The VNCSERVERS variable is a list of display:user pairs.
#
# Uncomment the lines below to start a VNC server on display :2
# as my 'myusername' (adjust this to your own). You will also
# need to set a VNC password; run 'man vncpasswd' to see how
# to do that.
#
# DO NOT RUN THIS SERVICE if your local area network is
# untrusted! For a secure way of using VNC, see
# <URL:http://www.uk.research.att.com/archive/vnc/sshvnc.html>.
# Use "-nolisten tcp" to prevent X connections to your VNC server via TCP.
# Use "-nohttpd" to prevent web-based VNC clients connecting.
# Use "-localhost" to prevent remote VNC clients connecting except when
# doing so through a secure tunnel. See the "-via" option in the
# `man vncviewer' manual page.
# VNCSERVERS="2:myusername"
# VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -nohttpd -localhost"
# The VNCSERVERS variable is a list of display:user pairs.
#
# Uncomment the lines below to start a VNC server on display :2
# as my 'myusername' (adjust this to your own). You will also
# need to set a VNC password; run 'man vncpasswd' to see how
# to do that.
#
# DO NOT RUN THIS SERVICE if your local area network is
# untrusted! For a secure way of using VNC, see
# <URL:http://www.uk.research.att.com/archive/vnc/sshvnc.html>.
# Use "-nolisten tcp" to prevent X connections to your VNC server via TCP.
# Use "-nohttpd" to prevent web-based VNC clients connecting.
# Use "-localhost" to prevent remote VNC clients connecting except when
# doing so through a secure tunnel. See the "-via" option in the
# `man vncviewer' manual page.
# VNCSERVERS="2:myusername"
# VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -nohttpd -localhost"
여기서 맨 마지막 두 라인이 바로 예제이다.
이것을 그대로 복사해서 라인을 추가하고
VNCSERVERS 라는 라인에서는 사용하고자하는 포트와 유저를 지정하게 된다.
또한 두번째 라인의 VNCSERVERARGS 라인은 vncviewer 를 통해서 접속했을 때 사용하고자 하는 해상도를 지정하게 된다.
물론 새로 추가하는 라인들은 앞의 # 을 제거해서 주석해제 처리 해주어야 한다.
위에서는 root 에서 만들었지만 이것을 다른 특정 유저에서 사용하게 할려면
특정 사용자 아이디로 로그인하고 나서 위의 과정을 반복해준 다음에
예를 들어 test 라는 계정이 이미 있고 그 계정으로 VNCSERVER 를 운영할려면 아래와 같이 수정해서 넣어준다.
VNCSERVERS="1:test"
VNCSERVERARGS[2]="-geometry 1024x768 -nolisten tcp -nohttpd -localhost"
VNCSERVERARGS[2]="-geometry 1024x768 -nolisten tcp -nohttpd -localhost"
만약 여러 계정에서 사용하고자 한다면 VNCSERVERS 라인에 추가를 해주어야 한다.
VNCSERVERS="1:test 2:test2 3:root"
VNCSERVERARGS[2]="-geometry 1024x768 -nolisten tcp -nohttpd -localhost"
VNCSERVERARGS[2]="-geometry 1024x768 -nolisten tcp -nohttpd -localhost"
설정이 완료되었다면 VNCSERVER 를 재시작해야 한다.
이렇게 되면 test 라는 계정과 test2 라는 계정 그리고 root 라는 계정으로 각각 따로 VNC 서버가 구동하게 되어서 각각 다른 화면으로 접속하여 다른 작업이 가능하게 된다.
즉 윈도우PC 에서 리눅스로 접속할 때에는 다음과 같은 화면처럼 3가지 접속이 가능하다.
즉 3개의 사용자별로 따로 VNC 서버가 구동되게 되는 것이다.
아이피 뒤의 숫자는 포트번호인데 위의 /etc/sysconfig/vncservers 파일에서 계정적어준 앞의 숫자를 바꾸고 VNC 재기동을 하면 설정한 포트번호로 접속이 가능하다.
6. VNCSERVER 재시작
리눅스에서는 두가지 방법을 통해서 서비스 재시작이 가능하다.
service vncserver restart
/etc/init.d/vncserver restart
두가지 모두 결과는 같다.
만약 VNCSERVER 를 전체적으로 중단하고 싶다면 맨 뒤쪽의 restart 대신에 stop 을 넣고
시작을 원하면 start 를 넣으면 된다.
만약 특정 유저들 중에서 하나만 중지하고자 할 때에는
그 유저로 로그인 한뒤에 display 번호까지 지정해서 KILL 하면 된다.
vncserver -kill :3
6. 원격PC(윈도우) 에서 vncviewer 를 설치해서 접속
VNCVIEWER 프로그램은 프리웨어로 윈도우PC 에 설치해서 접속이 가능하다.
REALVNC 를 사용하든지 TightVNC 를 사용하든지 마찬가지 이다.
어느것을 선택해도 좋다.
아래와 같이 입력해서 접속한다.
이때 아이피의 뒤에 적어주는 것은 위의 4번 과정에서 설정했던 포트번호이다.
다른 포트번호도 설정했다면 해당 포트번호를 적어주면 설정한 유저로 접속되는 것을 확인할 수 있을 것이다.
XXX.XXX.XXX.XXX:1
참고로 display 번호가 바로 내가 말한 포트번호이다.
VNC서버는 TCP포트를 5900 부터 시작하는데 display 번호가 1 이면 5901 포트를 사용해서 리눅스는 LISTEN 상태로 대기하고 있게 된다.
이것은 CentOS 터미널 상에서 netstat -na | grep 590* 을 쳐보면 LISTEN 상태인 것을 직접 확인할 수 있다.
** 추가 : VNC 서버 접속시 해상도 조절이 되지 않을 때.
추가적으로 VNC 의 해상도 조절이 잘 안되는 경우에는 /etc/init.d/vncserver 라는 스크립트를 직접 수정해서
VNC서버 실행되는 조건을 직접 수정해 버리는 방법도 있다.
centos 기준으로 원래는 "${VNCSERVERARGS[${DISP}]}" 의 변수가 들어가 있는 부분을
아래처럼 -geometry 1280x800 로 바꿔버리니 VNC서버가 시작될 때 해상도를 아래 해상도로 지정해서 띄우게 됨.ㅋ
runuser -l ${USER} -c "cd ~${USER} && [ -f .vnc/passwd ] && vncserver :${DISP} -geometry 1280x800"
'내가쓰는리눅스 강좌' 카테고리의 다른 글
리눅스 여유 메모리 체크 관련 (2) | 2011.05.17 |
---|---|
리눅스에서 임의의 파일 생성 (2) | 2010.11.16 |
텍스트 파일을 잘라보자. split (0) | 2010.05.31 |
리눅스 시스템의 부팅시 파일무결성 체크 강제로 하기 (0) | 2010.04.19 |
리눅스 dmesg 를 통한 eth 포트의 down / up 구분 (0) | 2010.03.30 |
28. CentOS 에서 yum 수행시 repo 사이트 추가 (0) | 2009.12.23 |
27. CentOS 에서의 한글 설정 (3) | 2009.11.24 |
26. ethtool 사용하기 speed 와 duplex 변경 (6) | 2009.11.23 |
25. sort 명령어 (2) | 2009.11.05 |
24. tar 압축파일에 관해서 (0) | 2009.09.15 |
2010. 6. 23. 21:52
솔라리스 10 NIC 의 speed / duplex 변경 방법
2010. 6. 23. 21:52 in 솔라리스10
솔라리스 10에서는 nddconfig 를 수행해야 한다.
이 파일의 위치는 다음과 같다.
[root@localhost :/etc/rc2.d ] ls -l *ndd*
lrwxrwxrwx 1 root root 21 Apr 7 2008 S31nddconfig -> /etc/init.d/nddconfig*
안의 내용을 보면 각각의 네트워크 인터페이스마다 speed 와 duplex 를 설정할 수 있게 되어 있다.
이것을 변경하고자 하도록 메모장에 복사해서 한 라인식 터미널에 붙여넣어 주고 실행시켜 주고나서
서버를 OS 리부팅해야 한다.
물론 그 전에 스위치 쪽의 speed / duplex 가 우선적으로 변경되어야 할 것은 당연지사.
Solaris 버전마다 틀릴 수 있으므로 확인이 필요할 것이다.
이 파일의 위치는 다음과 같다.
[root@localhost :/etc/rc2.d ] ls -l *ndd*
lrwxrwxrwx 1 root root 21 Apr 7 2008 S31nddconfig -> /etc/init.d/nddconfig*
안의 내용을 보면 각각의 네트워크 인터페이스마다 speed 와 duplex 를 설정할 수 있게 되어 있다.
이것을 변경하고자 하도록 메모장에 복사해서 한 라인식 터미널에 붙여넣어 주고 실행시켜 주고나서
서버를 OS 리부팅해야 한다.
물론 그 전에 스위치 쪽의 speed / duplex 가 우선적으로 변경되어야 할 것은 당연지사.
Solaris 버전마다 틀릴 수 있으므로 확인이 필요할 것이다.
[root@localhost :/etc/rc2.d ] more S31nddconfig
#!/bin/sh
echo "All CE NIC, Full-Duplex Fixed"
/usr/sbin/ndd -set /dev/ce instance 0
/usr/sbin/ndd -set /dev/ce adv_1000fdx_cap 0
/usr/sbin/ndd -set /dev/ce adv_1000hdx_cap 0
/usr/sbin/ndd -set /dev/ce adv_100fdx_cap 1
/usr/sbin/ndd -set /dev/ce adv_100hdx_cap 0
/usr/sbin/ndd -set /dev/ce adv_10fdx_cap 0
/usr/sbin/ndd -set /dev/ce adv_10hdx_cap 0
/usr/sbin/ndd -set /dev/ce adv_autoneg_cap 0
....
#!/bin/sh
echo "All CE NIC, Full-Duplex Fixed"
/usr/sbin/ndd -set /dev/ce instance 0
/usr/sbin/ndd -set /dev/ce adv_1000fdx_cap 0
/usr/sbin/ndd -set /dev/ce adv_1000hdx_cap 0
/usr/sbin/ndd -set /dev/ce adv_100fdx_cap 1
/usr/sbin/ndd -set /dev/ce adv_100hdx_cap 0
/usr/sbin/ndd -set /dev/ce adv_10fdx_cap 0
/usr/sbin/ndd -set /dev/ce adv_10hdx_cap 0
/usr/sbin/ndd -set /dev/ce adv_autoneg_cap 0
....
'솔라리스10' 카테고리의 다른 글
솔라리스 PKG 추가 / 제거 (0) | 2011.06.18 |
---|---|
솔라리스 계정 aging 관련 ( expire 현상 ) (0) | 2011.03.17 |
2010. 5. 31. 11:07
텍스트 파일을 잘라보자. split
2010. 5. 31. 11:07 in 내가쓰는리눅스 강좌
리눅스 명령어 중의 split 는 큰 용량의 텍스트 파일을 여러개로 분리하는 명령어이다.
기억해야 되는 옵션은 -l 옵션이다. 이것은 텍스트 파일을 라인 단위로 자르는 것이다.
split -l test.txt 라고 넣으면 기본 1000 라인씩 잘라서 파일을 생성하는데
생성되는 파일의 이름은 순차적으로 xaa, xab ~ 이런식으로 생성된다.
만약 용량단위로 자르고 싶다면 -b 옵션을 이용하자
split -b 10K test.txt 라고 넣으면 10K ( 10240 ) 만큼씩 잘라지게 된다.
[si@localhost test]$ split --help
사용법: split [<옵션>] [<입력> [<접두어>]]
Output fixed-size pieces of INPUT to PREFIXaa, PREFIXab, ...; default
size is 1000 lines, and default PREFIX is `x'. With no INPUT, or when INPUT
is -, read standard input.
긴 옵션에서 꼭 필요한 인수는 짧은 옵션에도 꼭 필요합니다.
-a, --suffix-length=N use suffixes of length N (default 2)
-b, --bytes=SIZE put SIZE bytes per output file
-C, --line-bytes=SIZE put at most SIZE bytes of lines per output file
-d, --numeric-suffixes use numeric suffixes instead of alphabetic
-l, --lines=NUMBER put NUMBER lines per output file
--verbose 진단 내용을 각 출력 파일을 열기 직전에 표준 오류로
출력합니다
--help 이 도움말을 표시하고 끝냅니다
--version 버전 정보를 출력하고 끝냅니다
<크기>에 접미어로 그 단위를 나타낼 수 있습니다; b는 512, k는 1킬로, m은 1메가입니다.
<bug-coreutils@gnu.org>(으)로 버그를 알려 주십시오.
사용법: split [<옵션>] [<입력> [<접두어>]]
Output fixed-size pieces of INPUT to PREFIXaa, PREFIXab, ...; default
size is 1000 lines, and default PREFIX is `x'. With no INPUT, or when INPUT
is -, read standard input.
긴 옵션에서 꼭 필요한 인수는 짧은 옵션에도 꼭 필요합니다.
-a, --suffix-length=N use suffixes of length N (default 2)
-b, --bytes=SIZE put SIZE bytes per output file
-C, --line-bytes=SIZE put at most SIZE bytes of lines per output file
-d, --numeric-suffixes use numeric suffixes instead of alphabetic
-l, --lines=NUMBER put NUMBER lines per output file
--verbose 진단 내용을 각 출력 파일을 열기 직전에 표준 오류로
출력합니다
--help 이 도움말을 표시하고 끝냅니다
--version 버전 정보를 출력하고 끝냅니다
<크기>에 접미어로 그 단위를 나타낼 수 있습니다; b는 512, k는 1킬로, m은 1메가입니다.
<bug-coreutils@gnu.org>(으)로 버그를 알려 주십시오.
기억해야 되는 옵션은 -l 옵션이다. 이것은 텍스트 파일을 라인 단위로 자르는 것이다.
split -l test.txt 라고 넣으면 기본 1000 라인씩 잘라서 파일을 생성하는데
생성되는 파일의 이름은 순차적으로 xaa, xab ~ 이런식으로 생성된다.
[si@localhost test]$ split -l 10 test.txt
[si@localhost test]$ ls -l
합계 12
-rw-rw-r-- 1 si si 28 5월 31 10:34 test.txt
-rw-rw-r-- 1 si si 21 5월 31 10:35 xaa
-rw-rw-r-- 1 si si 7 5월 31 10:35 xab
[si@localhost test]$ cat xaa
1
2
3
4
5
6
7
8
9
10
[si@localhost test]$ cat xab
11
12
[si@localhost test]$ ls -l
합계 12
-rw-rw-r-- 1 si si 28 5월 31 10:34 test.txt
-rw-rw-r-- 1 si si 21 5월 31 10:35 xaa
-rw-rw-r-- 1 si si 7 5월 31 10:35 xab
[si@localhost test]$ cat xaa
1
2
3
4
5
6
7
8
9
10
[si@localhost test]$ cat xab
11
12
만약 용량단위로 자르고 싶다면 -b 옵션을 이용하자
split -b 10K test.txt 라고 넣으면 10K ( 10240 ) 만큼씩 잘라지게 된다.
'내가쓰는리눅스 강좌' 카테고리의 다른 글
리눅스 여유 메모리 체크 관련 (2) | 2011.05.17 |
---|---|
리눅스에서 임의의 파일 생성 (2) | 2010.11.16 |
리눅스 VNCSERVER 설정 방법 (3) | 2010.07.14 |
리눅스 시스템의 부팅시 파일무결성 체크 강제로 하기 (0) | 2010.04.19 |
리눅스 dmesg 를 통한 eth 포트의 down / up 구분 (0) | 2010.03.30 |
28. CentOS 에서 yum 수행시 repo 사이트 추가 (0) | 2009.12.23 |
27. CentOS 에서의 한글 설정 (3) | 2009.11.24 |
26. ethtool 사용하기 speed 와 duplex 변경 (6) | 2009.11.23 |
25. sort 명령어 (2) | 2009.11.05 |
24. tar 압축파일에 관해서 (0) | 2009.09.15 |
2010. 5. 25. 00:31
파일비교 스크립트 5
2010. 5. 25. 00:31 in 쉘스크립트
a.txt 에는 원본 파일로 대용량 파일
b.txt 에는 부분 파일
a.txt 에 있는 내용중에 b.txt 파일에 있는 내용이 포함되어 있는 라인만 뽑아내는 스크립트
결과는 tmp.txt 라는 파일에 저장된다.
b.txt 에는 부분 파일
a.txt 에 있는 내용중에 b.txt 파일에 있는 내용이 포함되어 있는 라인만 뽑아내는 스크립트
#!/bin/bash
dir=$PWD
for mdn in `cat $dir/b.txt | awk -F, '{print $1}'`
do
grep $mdn $dir/a.txt >> $dir/tmp.txt
done
dir=$PWD
for mdn in `cat $dir/b.txt | awk -F, '{print $1}'`
do
grep $mdn $dir/a.txt >> $dir/tmp.txt
done
결과는 tmp.txt 라는 파일에 저장된다.
'쉘스크립트' 카테고리의 다른 글
파일 사이즈가 0 인 개수 확인 스크립트 (0) | 2011.09.19 |
---|---|
1초 마다 특정 작업을 하는 스크립트 (0) | 2011.09.07 |
파일 비교 스크립트 8 (0) | 2011.09.03 |
날짜 표시 쉘 스크립트 (0) | 2011.08.05 |
파일 라인안에 앞에 내용 추가 / 맨뒤에 내용 추가 방법 (0) | 2011.06.17 |
파일들의 확장자만 변경 (0) | 2010.04.22 |
15. 텍스트 파일 포맷 변경 (2) | 2009.12.22 |
14. 지난 파일 압축하고 삭제하기 (2) | 2009.12.18 |
13. 파일 비교 스크립트 4 (2) | 2009.11.05 |
12. 파일 개수 비교해서 삭제하는 스크립트 (3) | 2009.10.21 |
2010. 4. 22. 14:20
파일들의 확장자만 변경
2010. 4. 22. 14:20 in 쉘스크립트
현재 디렉토리의 TXT 라는 확장자를 가진 파일들이 있고,
이것들을 모두 JPEG 라는 확장자로 변경하고 싶다면
간단한 쉘스크립트로 변경이 가능하다.
우선 test.sh 라는 스크립트를 아래의 내용으로 만든다.
실행할 때에는 test.sh txt jpeg 라고 수행을 해야 한다.
우선 chmod +x 명령어로 test.sh 에 실행권한을 주고
아래와 같이 수행한다.
아래는 수행되는 모든 과정을 보여준다.
이것들을 모두 JPEG 라는 확장자로 변경하고 싶다면
간단한 쉘스크립트로 변경이 가능하다.
우선 test.sh 라는 스크립트를 아래의 내용으로 만든다.
#!/bin/sh
for f in *.${1}; do mv "$f" "${f%${1}}${2}"; done
for f in *.${1}; do mv "$f" "${f%${1}}${2}"; done
실행할 때에는 test.sh txt jpeg 라고 수행을 해야 한다.
우선 chmod +x 명령어로 test.sh 에 실행권한을 주고
아래와 같이 수행한다.
chmod +x test.sh
./test.sh txt jpeg
./test.sh txt jpeg
아래는 수행되는 모든 과정을 보여준다.
[si@localhost 100422]$ ls -l
합계 4
-rw-rw-r-- 1 si si 0 4월 22 14:05 1.txt
-rw-rw-r-- 1 si si 0 4월 22 14:05 2.txt
-rw-rw-r-- 1 si si 0 4월 22 14:05 3.txt
-rwxrwxr-x 1 si si 61 4월 22 14:14 test.sh
[si@localhost 100422]$
[si@localhost 100422]$ ./test.sh txt jpeg
[si@localhost 100422]$ ls -l
합계 4
-rw-rw-r-- 1 si si 0 4월 22 14:05 1.jpeg
-rw-rw-r-- 1 si si 0 4월 22 14:05 2.jpeg
-rw-rw-r-- 1 si si 0 4월 22 14:05 3.jpeg
-rwxrwxr-x 1 si si 61 4월 22 14:14 test.sh
합계 4
-rw-rw-r-- 1 si si 0 4월 22 14:05 1.txt
-rw-rw-r-- 1 si si 0 4월 22 14:05 2.txt
-rw-rw-r-- 1 si si 0 4월 22 14:05 3.txt
-rwxrwxr-x 1 si si 61 4월 22 14:14 test.sh
[si@localhost 100422]$
[si@localhost 100422]$ ./test.sh txt jpeg
[si@localhost 100422]$ ls -l
합계 4
-rw-rw-r-- 1 si si 0 4월 22 14:05 1.jpeg
-rw-rw-r-- 1 si si 0 4월 22 14:05 2.jpeg
-rw-rw-r-- 1 si si 0 4월 22 14:05 3.jpeg
-rwxrwxr-x 1 si si 61 4월 22 14:14 test.sh
'쉘스크립트' 카테고리의 다른 글
1초 마다 특정 작업을 하는 스크립트 (0) | 2011.09.07 |
---|---|
파일 비교 스크립트 8 (0) | 2011.09.03 |
날짜 표시 쉘 스크립트 (0) | 2011.08.05 |
파일 라인안에 앞에 내용 추가 / 맨뒤에 내용 추가 방법 (0) | 2011.06.17 |
파일비교 스크립트 5 (2) | 2010.05.25 |
15. 텍스트 파일 포맷 변경 (2) | 2009.12.22 |
14. 지난 파일 압축하고 삭제하기 (2) | 2009.12.18 |
13. 파일 비교 스크립트 4 (2) | 2009.11.05 |
12. 파일 개수 비교해서 삭제하는 스크립트 (3) | 2009.10.21 |
11. SSH 접속 차단 스크립트 ( 5번 패스워드 틀리면 자동 차단) (2) | 2009.09.19 |
2010. 4. 21. 00:22
공유기 기능 - 고급기능4 ( WOL )
2010. 4. 21. 00:22 in 네트워크 기초
공유기의 고급기능 중에 WOL ( Wake On Lan ) 기능이 있다.
사실 처음에 공유기를 공부하게 된 계기도 이 기능이었다.
WOL 이란 LAN 을 통해서 컴퓨터를 부팅시키는 기능으로 원격에서 공유기 설정화면으로 들어와서
공유기 아래 사설PC 를 부팅시키는 기능이다.
즉 원격에서 컴퓨터를 키고 원격접속 TOOL 을 통해 원격으로 PC 에 접속할 수 있는 기능이다.
이 기능을 사용하기 위해서는 몇가지 체크를 해야 한다.
메인보드에서 WOL 기능을 지원하는지? 랜카드가 WOL 을 지원하는지?
요즘의 메인보드에서는 거의 다 지원한다고 보면 될 것이다.
또한 랜카드도 마찬가지이고
1. 공유기에서의 WOL 설정
공유기에서는 WOL 설정에 들어가서
WOL 을 사용할 PC 의 Mac address 를 적어준다.
윈도우PC 라면 command 창에서 ifconfig/all 로 현재 사용중인 랜포트의 Mac address 를 확인할 수 있다.
2. PC 에서의 WOL 설정
바이오스에서 WOL 기능을 활성화시켜준다.
메인보드의 매뉴얼을 참고해서 Wake On Lan 기능을 켜주어야 한다.
이렇게 해서 컴퓨터를 종료시켰을 때 공유기와 연결된 포트가 계속 LED 가 들어오는지 확인한다.
만약 종료햇는데 공유기 사설포트쪽의 LED 가 꺼지면 WOL 기능이 동작하지 않는다.
추가적으로 윈도우즈의 랜카드 설정에서 확인을 해야 한다.
3. PC의 랜카드 설정 확인
아래 그림처럼 "이 장치로 컴퓨터를 대기 상태에서 빠져 나오게 함" 을 클릭해야 한다.
물론 공유기에서 외부에서 원격접속으로 공유기 웹화면으로 접속할 수 있도록 미리 설정이 되어 있어야
원격에서 공유기설정화면으로 접속해서 ( 공인아이피를 알고 있어야 함 )
WOL 기능으로 사설PC 를 부팅시킬 수 있다.
그리고 원격접속하는 방법은 여러가지가 잇다. 원도우 자체에서 제공하는 "원격데스크톱 연결" 을 사용하거나
아니면 VNC 같은 프로그램을 이용해도 된다.
( 단, 공유기에 미리 해당 프로그램이 사용하는 포트가 포트포워딩으로 지정이 되어 있어야 한다
전에 쓴 [네트워크 기초] - 공유기 기능 - 고급기능1 ( 포트포워딩 ) 을 참고하기 바란다 )
원리는 간단하다. 컴퓨터를 종료시켰지만 랜카드는 계속 전원을 유지시키고 대기상태로 있다가
매직패킷 이라는 패킷이 들어오게 되면
컴퓨터를 부팅시키는 원리이다.
자 다들 한번 해보시길
예전에 처음 WOL 을 구성할때에는 랜카드가 지원하지 않아서 3핀짜리 케이블로
PCI 랜카드와 메인보드를 연결해줘서 사용했었다.
물론 3핀이 있는 랜카드를 새로 장만한 것이구요.
하지만 요즘은 아예 메인보드에 랜카드가 달렸으니 그럴 필요는 이제 없겠지요 ㅎㅎ
4. 사용이후 PC 의 전원끄기
다 사용한 PC 의 전원을 원격데스크탑으로 접속해서 끌려고 하면 "시스템종료" 버튼이 보이지 않는다.
이럴 때에는 "시작" --> "실행" 창에 cmd 를 입력하고 엔터를 하면
까만 DOS 창이 나오고 여기에다가
shutdown -s -t 10
라고 치면 10초 뒤에 컴퓨터가 종료된다.
사실 처음에 공유기를 공부하게 된 계기도 이 기능이었다.
WOL 이란 LAN 을 통해서 컴퓨터를 부팅시키는 기능으로 원격에서 공유기 설정화면으로 들어와서
공유기 아래 사설PC 를 부팅시키는 기능이다.
즉 원격에서 컴퓨터를 키고 원격접속 TOOL 을 통해 원격으로 PC 에 접속할 수 있는 기능이다.
이 기능을 사용하기 위해서는 몇가지 체크를 해야 한다.
메인보드에서 WOL 기능을 지원하는지? 랜카드가 WOL 을 지원하는지?
요즘의 메인보드에서는 거의 다 지원한다고 보면 될 것이다.
또한 랜카드도 마찬가지이고
1. 공유기에서의 WOL 설정
공유기에서는 WOL 설정에 들어가서
WOL 을 사용할 PC 의 Mac address 를 적어준다.
윈도우PC 라면 command 창에서 ifconfig/all 로 현재 사용중인 랜포트의 Mac address 를 확인할 수 있다.
2. PC 에서의 WOL 설정
바이오스에서 WOL 기능을 활성화시켜준다.
메인보드의 매뉴얼을 참고해서 Wake On Lan 기능을 켜주어야 한다.
이렇게 해서 컴퓨터를 종료시켰을 때 공유기와 연결된 포트가 계속 LED 가 들어오는지 확인한다.
만약 종료햇는데 공유기 사설포트쪽의 LED 가 꺼지면 WOL 기능이 동작하지 않는다.
추가적으로 윈도우즈의 랜카드 설정에서 확인을 해야 한다.
3. PC의 랜카드 설정 확인
아래 그림처럼 "이 장치로 컴퓨터를 대기 상태에서 빠져 나오게 함" 을 클릭해야 한다.
물론 공유기에서 외부에서 원격접속으로 공유기 웹화면으로 접속할 수 있도록 미리 설정이 되어 있어야
원격에서 공유기설정화면으로 접속해서 ( 공인아이피를 알고 있어야 함 )
WOL 기능으로 사설PC 를 부팅시킬 수 있다.
그리고 원격접속하는 방법은 여러가지가 잇다. 원도우 자체에서 제공하는 "원격데스크톱 연결" 을 사용하거나
아니면 VNC 같은 프로그램을 이용해도 된다.
( 단, 공유기에 미리 해당 프로그램이 사용하는 포트가 포트포워딩으로 지정이 되어 있어야 한다
전에 쓴 [네트워크 기초] - 공유기 기능 - 고급기능1 ( 포트포워딩 ) 을 참고하기 바란다 )
원리는 간단하다. 컴퓨터를 종료시켰지만 랜카드는 계속 전원을 유지시키고 대기상태로 있다가
매직패킷 이라는 패킷이 들어오게 되면
컴퓨터를 부팅시키는 원리이다.
자 다들 한번 해보시길
예전에 처음 WOL 을 구성할때에는 랜카드가 지원하지 않아서 3핀짜리 케이블로
PCI 랜카드와 메인보드를 연결해줘서 사용했었다.
물론 3핀이 있는 랜카드를 새로 장만한 것이구요.
하지만 요즘은 아예 메인보드에 랜카드가 달렸으니 그럴 필요는 이제 없겠지요 ㅎㅎ
4. 사용이후 PC 의 전원끄기
다 사용한 PC 의 전원을 원격데스크탑으로 접속해서 끌려고 하면 "시스템종료" 버튼이 보이지 않는다.
이럴 때에는 "시작" --> "실행" 창에 cmd 를 입력하고 엔터를 하면
까만 DOS 창이 나오고 여기에다가
shutdown -s -t 10
라고 치면 10초 뒤에 컴퓨터가 종료된다.
'네트워크 기초' 카테고리의 다른 글
FTP 이란? File Transfer Protocol (2) | 2010.09.27 |
---|---|
공유기기능 - 고급기능3 TwinIP (0) | 2010.04.06 |
공유기 기능 - 고급기능2 ( DMZ ) (0) | 2010.03.17 |
공유기 기능 - 고급기능1 ( 포트포워딩 ) (0) | 2010.03.03 |
공유기 - 기본지식편 (0) | 2010.02.25 |
브리지와 스위치의 차이점 (1) | 2009.12.18 |
OSI 7 layer 설명 (2) | 2009.12.18 |
네트워크 관련 볼것 (0) | 2009.11.27 |
2010. 4. 19. 15:27
리눅스 시스템의 부팅시 파일무결성 체크 강제로 하기
2010. 4. 19. 15:27 in 내가쓰는리눅스 강좌
리눅스 서버를 강제로 전원버튼을 눌러서 셧다운 시킨후
다시 부팅시키거나 할 때에는
리눅스 부팅시 파일 무결성 체크를 할 것인지 물어보게 되어 있습니다.
위의 경우처럼 강제로 서버를 리부팅했을때에는 root 디렉토리 밑에
(1) 숨김파일로 .autofsck 라는 파일 생성되고 이것은 다음 부팅시에 아래의 메시를 보이면서 5초안에 Y 를 누르면 파일 무결성 체크를 진행하게 됩니다.
여기서 팁은 강제로 파일 무결성을 체크하도록 하는 것입니다.
실제로 리눅스가 부팅되는 과정에서 /etc/rc.d 밑의 rc.sysinit 파일이 수행되게 되는데
이 스크립트 안에 관련된 내용이 있습니다.
이것을 수정해야 하고 /forcefsck 파일을 touch /forcefsck 명령어로 파일만 생성시켜 주면됩니다.
서버가 리부팅되고 나서는 rc.sysinit 스크립트안에 /.autofsck 와 /forcefsck 파일 두개를 지우는 내용이 포함되어 있으므로, 서버가 리부팅될때마다 무조건 체크하기 위해서는 /forcefsck 파일을 지우는 부분을 rc.sysinit 스크립트안에서 지워줘야 합니다.
이렇게 되면 다음 리눅스 서버가 부팅 될 때마다 무조건 파일무결성 체크를 진행하게 됩니다. ^^
※ 참고적으로 fsck 라는 명령어는 파일시스템을 unmount 한 상태에서 진행해야 됩니다. !!
만약 마운트 되어 있는 상태의 파티션에다가 fsck (파일시스템체크) 명령어를 내리게 되면
그 파티션은 날라갑니다 !! 정말 주의 해야 합니다.
다시 부팅시키거나 할 때에는
리눅스 부팅시 파일 무결성 체크를 할 것인지 물어보게 되어 있습니다.
위의 경우처럼 강제로 서버를 리부팅했을때에는 root 디렉토리 밑에
(1) 숨김파일로 .autofsck 라는 파일 생성되고 이것은 다음 부팅시에 아래의 메시를 보이면서 5초안에 Y 를 누르면 파일 무결성 체크를 진행하게 됩니다.
-rw-r--r-- 1 root root 0 Apr 1 17:33 .autofsck
Press Y within 3 seconds to force file system integrity check
(2) 또는 강제로 root 디렉토리 밑에 forcefsck 라는 파일을 만들어두면 다음 부팅시에 자동으로 파일무결성 체크를 진행하게 됩니다.
[root@localhost /]# cd /
[root@localhost /]# ls -l f*
-rw-r--r-- 1 root root 0 4월 19 15:17 forcefsck
[root@localhost /]# ls -l f*
-rw-r--r-- 1 root root 0 4월 19 15:17 forcefsck
reboot 명령어를 했을 때 다음 부팅시 강제체크한다는 메시지를 볼 수 있을 겁니다.
여기서 팁은 강제로 파일 무결성을 체크하도록 하는 것입니다.
실제로 리눅스가 부팅되는 과정에서 /etc/rc.d 밑의 rc.sysinit 파일이 수행되게 되는데
이 스크립트 안에 관련된 내용이 있습니다.
이것을 수정해야 하고 /forcefsck 파일을 touch /forcefsck 명령어로 파일만 생성시켜 주면됩니다.
[root@localhost rc.d]# cd /etc/rc.d
[root@localhost rc.d]# ls -l rc.sy*
-rwxr-xr-x 1 root root 27420 3월 6 2009 rc.sysinit
[root@localhost rc.d]# ls -l rc.sy*
-rwxr-xr-x 1 root root 27420 3월 6 2009 rc.sysinit
서버가 리부팅되고 나서는 rc.sysinit 스크립트안에 /.autofsck 와 /forcefsck 파일 두개를 지우는 내용이 포함되어 있으므로, 서버가 리부팅될때마다 무조건 체크하기 위해서는 /forcefsck 파일을 지우는 부분을 rc.sysinit 스크립트안에서 지워줘야 합니다.
/etc/rc.sysinit 파일 내용중
# Clean out /.
rm -f /fastboot /fsckoptions /forcefsck /.autofsck /forcequotacheck /halt \
/poweroff &> /dev/null
위 부분을 아래와 같이 수정
# Clean out /.
rm -f /fastboot /fsckoptions /.autofsck /forcequotacheck /halt \
/poweroff &> /dev/null
# Clean out /.
rm -f /fastboot /fsckoptions /forcefsck /.autofsck /forcequotacheck /halt \
/poweroff &> /dev/null
위 부분을 아래와 같이 수정
# Clean out /.
rm -f /fastboot /fsckoptions /.autofsck /forcequotacheck /halt \
/poweroff &> /dev/null
이렇게 되면 다음 리눅스 서버가 부팅 될 때마다 무조건 파일무결성 체크를 진행하게 됩니다. ^^
※ 참고적으로 fsck 라는 명령어는 파일시스템을 unmount 한 상태에서 진행해야 됩니다. !!
만약 마운트 되어 있는 상태의 파티션에다가 fsck (파일시스템체크) 명령어를 내리게 되면
그 파티션은 날라갑니다 !! 정말 주의 해야 합니다.
'내가쓰는리눅스 강좌' 카테고리의 다른 글
리눅스 여유 메모리 체크 관련 (2) | 2011.05.17 |
---|---|
리눅스에서 임의의 파일 생성 (2) | 2010.11.16 |
리눅스 VNCSERVER 설정 방법 (3) | 2010.07.14 |
텍스트 파일을 잘라보자. split (0) | 2010.05.31 |
리눅스 dmesg 를 통한 eth 포트의 down / up 구분 (0) | 2010.03.30 |
28. CentOS 에서 yum 수행시 repo 사이트 추가 (0) | 2009.12.23 |
27. CentOS 에서의 한글 설정 (3) | 2009.11.24 |
26. ethtool 사용하기 speed 와 duplex 변경 (6) | 2009.11.23 |
25. sort 명령어 (2) | 2009.11.05 |
24. tar 압축파일에 관해서 (0) | 2009.09.15 |
2010. 4. 6. 22:44
공유기기능 - 고급기능3 TwinIP
2010. 4. 6. 22:44 in 네트워크 기초
TwinIP 라는 것은 IPTIME 이라는 회사에서 만든 공유기 제품에 있는 기능입니다.
이것은 앞에 설명한 글의 [네트워크 기초] - 공유기 기능 - 고급기능2 ( DMZ )
에서 설명한 기능과 비슷한 기능이지만 약간 다릅니다.
DMZ 는 오래 전 공유기도 가지고 있는 기능인데 반해 TwinIP 는 비교적 근래에 추가된 기능이라고 할 수 있겠지요.
DMZ 는 사설PC 쪽에서는 여전히 사설IP 를 가지고 있는데 반해서
TwinIP는 사설PC라고 해도 실제로 공인IP 를 가지고 동작하게 되며, 동시에 다른 사설PC 는 사설IP 를 가지고
동시에 인터넷이 가능하게 됩니다.
즉 하나의 특정한PC 에만 공유기가 외부로부터 받은 공인IP 를 할당하면서 다른 사설PC 들에는 192.168.x.x 라는 사설IP 를 주어서 동시에 인터넷을 가능하도록 하는 것이지요
설정하는 방법은
(1) 공인IP를 받아서 사용하도록 할 PC 의 MAC address 를 공유기 설정에 넣어주고
(2) 그 사설PC 의 인터넷 설정은 DHCP 로만 잡아주면 끝입니다.
그러면 실제로 모든 포트가 IN / OUT 에서 그 PC 로 열리게 됩니다.
공유기 안의 다른 사설PC 에서 그 PC 로 접속할려고 해도 공인IP 를 쳐야 하지요
이것은 실제로 하나의 공인IP를 전혀 쓰지 못하는 기존의 공유기들과는 다르게
공인IP를 가지는 PC 를 가지게 하고 동시에 다른 PC 들의 인터넷도 되는 편리한 기능이라고 할 수 있지요
IPTIME 제품들을 가지고 계시다면 한번 쯤 사용해보는 것도 좋을 거 같네요 ^^
만약 다른 사설PC 에서도 TwinIP 를 설정한 PC 로 접속하려면 공인IP 로 접속을 해야 됩니다.
TwinIP 를 설정하거나 또는 DMZ 를 설정하는 이유는 공유기 외부의 네트워크 ( 공인IP ) 에서
공유기 아래의 사설PC 로 접속을 하기 위한 것인데요.
DMZ 를 선택하든 아니면 TwinIP 를 설정하든
아니면 포트포워딩으로 특정 포트만 열리도록 설정하든지
그건 자유입니다.
단지 포트포워딩을 사용하려면 프로세스가 사용하는 포트를 정확히 알고 열어줘야 겠지요
잘 모르고 복잡하다 그러면 TwinIP 를 설정하는 것이 가장 간편하지만
외부의 모든 포트에 대해서 열리게 되므로 사설PC 의 보안에 신경을 써야 겟지요 ^^
이것은 앞에 설명한 글의 [네트워크 기초] - 공유기 기능 - 고급기능2 ( DMZ )
에서 설명한 기능과 비슷한 기능이지만 약간 다릅니다.
DMZ 는 오래 전 공유기도 가지고 있는 기능인데 반해 TwinIP 는 비교적 근래에 추가된 기능이라고 할 수 있겠지요.
DMZ 는 사설PC 쪽에서는 여전히 사설IP 를 가지고 있는데 반해서
TwinIP는 사설PC라고 해도 실제로 공인IP 를 가지고 동작하게 되며, 동시에 다른 사설PC 는 사설IP 를 가지고
동시에 인터넷이 가능하게 됩니다.
즉 하나의 특정한PC 에만 공유기가 외부로부터 받은 공인IP 를 할당하면서 다른 사설PC 들에는 192.168.x.x 라는 사설IP 를 주어서 동시에 인터넷을 가능하도록 하는 것이지요
설정하는 방법은
(1) 공인IP를 받아서 사용하도록 할 PC 의 MAC address 를 공유기 설정에 넣어주고
(2) 그 사설PC 의 인터넷 설정은 DHCP 로만 잡아주면 끝입니다.
그러면 실제로 모든 포트가 IN / OUT 에서 그 PC 로 열리게 됩니다.
공유기 안의 다른 사설PC 에서 그 PC 로 접속할려고 해도 공인IP 를 쳐야 하지요
이것은 실제로 하나의 공인IP를 전혀 쓰지 못하는 기존의 공유기들과는 다르게
공인IP를 가지는 PC 를 가지게 하고 동시에 다른 PC 들의 인터넷도 되는 편리한 기능이라고 할 수 있지요
IPTIME 제품들을 가지고 계시다면 한번 쯤 사용해보는 것도 좋을 거 같네요 ^^
만약 다른 사설PC 에서도 TwinIP 를 설정한 PC 로 접속하려면 공인IP 로 접속을 해야 됩니다.
TwinIP 를 설정하거나 또는 DMZ 를 설정하는 이유는 공유기 외부의 네트워크 ( 공인IP ) 에서
공유기 아래의 사설PC 로 접속을 하기 위한 것인데요.
DMZ 를 선택하든 아니면 TwinIP 를 설정하든
아니면 포트포워딩으로 특정 포트만 열리도록 설정하든지
그건 자유입니다.
단지 포트포워딩을 사용하려면 프로세스가 사용하는 포트를 정확히 알고 열어줘야 겠지요
잘 모르고 복잡하다 그러면 TwinIP 를 설정하는 것이 가장 간편하지만
외부의 모든 포트에 대해서 열리게 되므로 사설PC 의 보안에 신경을 써야 겟지요 ^^
'네트워크 기초' 카테고리의 다른 글
FTP 이란? File Transfer Protocol (2) | 2010.09.27 |
---|---|
공유기 기능 - 고급기능4 ( WOL ) (0) | 2010.04.21 |
공유기 기능 - 고급기능2 ( DMZ ) (0) | 2010.03.17 |
공유기 기능 - 고급기능1 ( 포트포워딩 ) (0) | 2010.03.03 |
공유기 - 기본지식편 (0) | 2010.02.25 |
브리지와 스위치의 차이점 (1) | 2009.12.18 |
OSI 7 layer 설명 (2) | 2009.12.18 |
네트워크 관련 볼것 (0) | 2009.11.27 |
2010. 3. 30. 14:33
리눅스 dmesg 를 통한 eth 포트의 down / up 구분
2010. 3. 30. 14:33 in 내가쓰는리눅스 강좌
리눅스 dmesg 를 통해서
서버에 연결된 랜포트들을 구분할 수 있다.
서버쪽의 랜포트를 뽑고 나면 eth 포트의 링크가 down 된게 되고
이것은 리눅스 서버에서 dmesg | grep eth 명령으로
맨 아래쪽에 업데이트가 된다.
즉 랜포트를 뽑고 서버에서 dmesg | grep eth 명령으로 확인하면
아래쪽에 링크 UP 과 DOWN 을 확인할 수 있다.
서버에 연결된 랜포트들을 구분할 수 있다.
서버쪽의 랜포트를 뽑고 나면 eth 포트의 링크가 down 된게 되고
이것은 리눅스 서버에서 dmesg | grep eth 명령으로
맨 아래쪽에 업데이트가 된다.
즉 랜포트를 뽑고 서버에서 dmesg | grep eth 명령으로 확인하면
아래쪽에 링크 UP 과 DOWN 을 확인할 수 있다.
[root@mbuIVR1:~ ] dmesg | grep eth
divert: not allocating divert_blk for non-ethernet device lo
divert: allocating divert_blk for eth0
e1000: eth0: e1000_probe: Intel(R) PRO/1000 Network Connection
divert: allocating divert_blk for eth1
e1000: eth1: e1000_probe: Intel(R) PRO/1000 Network Connection
divert: allocating divert_blk for eth2
e1000: eth2: e1000_probe: Intel(R) PRO/1000 Network Connection
divert: allocating divert_blk for eth3
e1000: eth3: e1000_probe: Intel(R) PRO/1000 Network Connection
e1000: eth0: e1000_watchdog_task: NIC Link is Up 1000 Mbps Full Duplex
e1000: eth0: e1000_watchdog_task: NIC Link is Down
e1000: eth0: e1000_watchdog_task: NIC Link is Up 1000 Mbps Full Duplex
e1000: eth1: e1000_watchdog_task: NIC Link is Up 1000 Mbps Full Duplex
e1000: eth1: e1000_watchdog_task: NIC Link is Down
e1000: eth1: e1000_watchdog_task: NIC Link is Up 1000 Mbps Full Duplex
e1000: eth2: e1000_watchdog_task: NIC Link is Up 100 Mbps Half Duplex
e1000: eth2: e1000_watchdog_task: NIC Link is Down
e1000: eth2: e1000_watchdog_task: NIC Link is Up 100 Mbps Full Duplex
e1000: eth3: e1000_watchdog_task: NIC Link is Up 100 Mbps Half Duplex
e1000: eth3: e1000_watchdog_task: NIC Link is Down
e1000: eth3: e1000_watchdog_task: NIC Link is Up 100 Mbps Full Duplex
divert: not allocating divert_blk for non-ethernet device sit0
eth2: no IPv6 routers present
eth3: no IPv6 routers present
eth1: no IPv6 routers present
eth0: no IPv6 routers present
e1000: eth2: e1000_watchdog_task: NIC Link is Down
eth2: no IPv6 routers present
e1000: eth2: e1000_watchdog_task: NIC Link is Up 100 Mbps Full Duplex
e1000: eth2: e1000_watchdog_task: NIC Link is Down
eth2: no IPv6 routers present
e1000: eth2: e1000_watchdog_task: NIC Link is Up 100 Mbps Full Duplex
e1000: eth2: e1000_watchdog_task: NIC Link is Down
e1000: eth0: e1000_watchdog_task: NIC Link is Down
e1000: eth2: e1000_watchdog_task: NIC Link is Up 100 Mbps Full Duplex
eth2: no IPv6 routers present
eth0: no IPv6 routers present
e1000: eth1: e1000_watchdog_task: NIC Link is Down
e1000: eth0: e1000_watchdog_task: NIC Link is Up 1000 Mbps Full Duplex
eth1: no IPv6 routers present
e1000: eth1: e1000_watchdog_task: NIC Link is Up 1000 Mbps Full Duplex
e1000: eth3: e1000_watchdog_task: NIC Link is Down
eth3: no IPv6 routers present
e1000: eth3: e1000_watchdog_task: NIC Link is Up 100 Mbps Full Duplex
[root@mbuIVR1:~ ]
divert: not allocating divert_blk for non-ethernet device lo
divert: allocating divert_blk for eth0
e1000: eth0: e1000_probe: Intel(R) PRO/1000 Network Connection
divert: allocating divert_blk for eth1
e1000: eth1: e1000_probe: Intel(R) PRO/1000 Network Connection
divert: allocating divert_blk for eth2
e1000: eth2: e1000_probe: Intel(R) PRO/1000 Network Connection
divert: allocating divert_blk for eth3
e1000: eth3: e1000_probe: Intel(R) PRO/1000 Network Connection
e1000: eth0: e1000_watchdog_task: NIC Link is Up 1000 Mbps Full Duplex
e1000: eth0: e1000_watchdog_task: NIC Link is Down
e1000: eth0: e1000_watchdog_task: NIC Link is Up 1000 Mbps Full Duplex
e1000: eth1: e1000_watchdog_task: NIC Link is Up 1000 Mbps Full Duplex
e1000: eth1: e1000_watchdog_task: NIC Link is Down
e1000: eth1: e1000_watchdog_task: NIC Link is Up 1000 Mbps Full Duplex
e1000: eth2: e1000_watchdog_task: NIC Link is Up 100 Mbps Half Duplex
e1000: eth2: e1000_watchdog_task: NIC Link is Down
e1000: eth2: e1000_watchdog_task: NIC Link is Up 100 Mbps Full Duplex
e1000: eth3: e1000_watchdog_task: NIC Link is Up 100 Mbps Half Duplex
e1000: eth3: e1000_watchdog_task: NIC Link is Down
e1000: eth3: e1000_watchdog_task: NIC Link is Up 100 Mbps Full Duplex
divert: not allocating divert_blk for non-ethernet device sit0
eth2: no IPv6 routers present
eth3: no IPv6 routers present
eth1: no IPv6 routers present
eth0: no IPv6 routers present
e1000: eth2: e1000_watchdog_task: NIC Link is Down
eth2: no IPv6 routers present
e1000: eth2: e1000_watchdog_task: NIC Link is Up 100 Mbps Full Duplex
e1000: eth2: e1000_watchdog_task: NIC Link is Down
eth2: no IPv6 routers present
e1000: eth2: e1000_watchdog_task: NIC Link is Up 100 Mbps Full Duplex
e1000: eth2: e1000_watchdog_task: NIC Link is Down
e1000: eth0: e1000_watchdog_task: NIC Link is Down
e1000: eth2: e1000_watchdog_task: NIC Link is Up 100 Mbps Full Duplex
eth2: no IPv6 routers present
eth0: no IPv6 routers present
e1000: eth1: e1000_watchdog_task: NIC Link is Down
e1000: eth0: e1000_watchdog_task: NIC Link is Up 1000 Mbps Full Duplex
eth1: no IPv6 routers present
e1000: eth1: e1000_watchdog_task: NIC Link is Up 1000 Mbps Full Duplex
e1000: eth3: e1000_watchdog_task: NIC Link is Down
eth3: no IPv6 routers present
e1000: eth3: e1000_watchdog_task: NIC Link is Up 100 Mbps Full Duplex
[root@mbuIVR1:~ ]
'내가쓰는리눅스 강좌' 카테고리의 다른 글
리눅스 여유 메모리 체크 관련 (2) | 2011.05.17 |
---|---|
리눅스에서 임의의 파일 생성 (2) | 2010.11.16 |
리눅스 VNCSERVER 설정 방법 (3) | 2010.07.14 |
텍스트 파일을 잘라보자. split (0) | 2010.05.31 |
리눅스 시스템의 부팅시 파일무결성 체크 강제로 하기 (0) | 2010.04.19 |
28. CentOS 에서 yum 수행시 repo 사이트 추가 (0) | 2009.12.23 |
27. CentOS 에서의 한글 설정 (3) | 2009.11.24 |
26. ethtool 사용하기 speed 와 duplex 변경 (6) | 2009.11.23 |
25. sort 명령어 (2) | 2009.11.05 |
24. tar 압축파일에 관해서 (0) | 2009.09.15 |
2010. 3. 29. 18:24
리눅스 32bit 와 64bit 구분
2010. 3. 29. 18:24 in 리눅스 퍼옴
1. 시스템이 32bit 인 경우 아래와 같이 32 라고 나옴
2. 시스템이 64bit 인 경우 아래와 같이 b4 라고 나옴
※ 참고 : 시스템에 대한 정보
cat /etc/issue
uname -a
cat /etc/redhat-release
솔라리스에서의 32bit 및 64bit 동작 구분
[root@localhost ~]# getconf LONG_BIT
32
32
2. 시스템이 64bit 인 경우 아래와 같이 b4 라고 나옴
[root@localhost ~]# getconf LONG_BIT
b4
b4
※ 참고 : 시스템에 대한 정보
cat /etc/issue
uname -a
cat /etc/redhat-release
[root@localhost ~]# cat /etc/issue
CentOS release 5.3 (Final)
Kernel \r on an \m
[root@localhost ~]# cat /etc/redhat-release
CentOS release 5.3 (Final)
[root@localhost ~]#
[root@localhost ~]# uname -a
Linux localhost 2.6.18-128.el5 #1 SMP Wed Jan 21 10:44:23 EST 2009 i686 i686 i386 GNU/Linux
CentOS release 5.3 (Final)
Kernel \r on an \m
[root@localhost ~]# cat /etc/redhat-release
CentOS release 5.3 (Final)
[root@localhost ~]#
[root@localhost ~]# uname -a
Linux localhost 2.6.18-128.el5 #1 SMP Wed Jan 21 10:44:23 EST 2009 i686 i686 i386 GNU/Linux
솔라리스에서의 32bit 및 64bit 동작 구분
isainfo -kv
64-bit sparcv9 kernel modules
'리눅스 퍼옴' 카테고리의 다른 글
rpm 명령어 자세한 옵션 (2) | 2008.11.11 |
---|---|
mplayer 설치하기 (0) | 2008.09.09 |
시스템관리툴킷 : 로그파일 이해하기 (0) | 2008.06.04 |
[펌글] 리눅스 하드 관리하기 (0) | 2007.11.22 |
[펌글] DHCP 란? (0) | 2007.11.22 |
[펌글] VNC 서버 (1) | 2007.11.22 |
2010. 3. 17. 14:27
공유기 기능 - 고급기능2 ( DMZ )
2010. 3. 17. 14:27 in 네트워크 기초
공유기의 고급기능중에 DMZ 기능을 설명하고자 합니다.
DMZ 란 공인아이피로부터 오는 모든 포트를 공유기 아래의 특정한 사설아이피를 가지는 PC 로 모두 넘겨주도록 설정하는 기능입니다.
공유기에서 설정할 때에는 특정 MAC address 로 설정을 하게 됩니다.
실제로 PC 가 아이피를 받아오는 것은 랜카드의 MAC address 를 통해서 이뤄지기 때문입니다.
MAC address 는 공인아이피 처럼 unique 한 값을 가져야 합니다.
수많은 랜 카드의 MAC address 중에서 중복되는 값을 가지는 것들은 없는 것이죠
이것은 뒤에 설명할 TwinIP 라는 것과는 약간 다릅니다.
또한 이전에 설명한 포트포워드가 이미 설정된 것들에 대해서는 예외적으로 동작하게 됩니다.
PC 에서는 사설아이피를 가지고 외부의 포트가 열리게 됩니다.
공유기 아래에서 보통의 다른 사설아이피를 가지는 PC 에서는 외부 공인아이피쪽의 포트로 요청이 들어오더라도
막혀있게 됩니다. 그것을 특정한 MAC 을 가지는 사설PC 에서 열도록 해주는 것이 바로 DMZ 설정입니다.
DMZ 란 공인아이피로부터 오는 모든 포트를 공유기 아래의 특정한 사설아이피를 가지는 PC 로 모두 넘겨주도록 설정하는 기능입니다.
공유기에서 설정할 때에는 특정 MAC address 로 설정을 하게 됩니다.
실제로 PC 가 아이피를 받아오는 것은 랜카드의 MAC address 를 통해서 이뤄지기 때문입니다.
MAC address 는 공인아이피 처럼 unique 한 값을 가져야 합니다.
수많은 랜 카드의 MAC address 중에서 중복되는 값을 가지는 것들은 없는 것이죠
이것은 뒤에 설명할 TwinIP 라는 것과는 약간 다릅니다.
또한 이전에 설명한 포트포워드가 이미 설정된 것들에 대해서는 예외적으로 동작하게 됩니다.
PC 에서는 사설아이피를 가지고 외부의 포트가 열리게 됩니다.
공유기 아래에서 보통의 다른 사설아이피를 가지는 PC 에서는 외부 공인아이피쪽의 포트로 요청이 들어오더라도
막혀있게 됩니다. 그것을 특정한 MAC 을 가지는 사설PC 에서 열도록 해주는 것이 바로 DMZ 설정입니다.
'네트워크 기초' 카테고리의 다른 글
FTP 이란? File Transfer Protocol (2) | 2010.09.27 |
---|---|
공유기 기능 - 고급기능4 ( WOL ) (0) | 2010.04.21 |
공유기기능 - 고급기능3 TwinIP (0) | 2010.04.06 |
공유기 기능 - 고급기능1 ( 포트포워딩 ) (0) | 2010.03.03 |
공유기 - 기본지식편 (0) | 2010.02.25 |
브리지와 스위치의 차이점 (1) | 2009.12.18 |
OSI 7 layer 설명 (2) | 2009.12.18 |
네트워크 관련 볼것 (0) | 2009.11.27 |
2010. 3. 3. 22:47
공유기 기능 - 고급기능1 ( 포트포워딩 )
2010. 3. 3. 22:47 in 네트워크 기초
공유기의 기본기능은 전의 글[네트워크 기초] - 공유기 - 기본지식편
에서 설명을 해두었다.
일반적으로 공유기를 사용하는데는 앞 글의 설명처럼 기본적인 선 연결만 잘 해주면 사용하는데 아무런 지장이 없다.
하지만 요즘에는 좀 더 많은 기능을 활용할 수 있도록 공유기가 나오고 있다.
이런 기능들에 대해서 살펴보자
우선 앞의 글을 읽고 이해를 해야 한다.
1. 포트포워딩
Portforwarding 이란 공인 아이피 쪽의 특정 포트로 패킷이 들어오면 그것을 사설아이피 쪽으로 포트를 변경해서
패킷을 전달해주는 기능이다.
예를 들어 외부에서 21번 FTP 요청이 들어왔을 때 사설아이피쪽의 PC 에 FTP 서버가 8000 으로 서비스를 돌려놓고 있다면,
외부의 네트워크에 있는 사용자는 공유기 아래의 사설PC 쪽으로 FTP 접속이 불가능하다.
하지만 포트포워딩 기능을 이용함으로써 외부에서 21번으로 접속하더라도
내부 FTP 서버의 8000 번 포트로 FTP 패킷이 전달되도록 할 수 있다.
거꾸로 외부에서 8000 번 포트로 FTP 패킷이 들어오면 공유기 아래의 PC 의 21번 포트로 FTP 패킷을 전달해줄 수 있다.
이것은 TCP 규격에 정의된 서비스들을 이용하거나 또는 개인이 사용하는 특정 프로그램의 포트를 포트포워드해서
내부에서 이용이 가능하도록 하게 해주는 것이다.
대표적인 서비스들은 윈도우원격데스크톱 기능 이라든가 HTTP, HTTPS, FTP, POP3, SMTP, TELNET, PPTP,
등이며 요즘 공유기는 인터넷 전화까지 지원이 가능하다.
하지만 중요한 것은 사설PC 쪽의 아이피를 지정해서 포트포워딩을 하는 것이기 때문에
공유기 아래의 내부PC가 특정한 사설아이피를 가지도록 ( 예를 들어 192.168.0.10 과 같이 고정되도록 )
설정을 해야 한다.
( 즉 PC 의 아이피를 위와 같이 192.168.0.10 으로 고정을 하거나 또는 공유기에서 특정 MAC address 를 가지는 PC의 랜카드가 특정한 사설아이피를 가지도록 설정하는 두가지 방법이 있다 )
에서 설명을 해두었다.
일반적으로 공유기를 사용하는데는 앞 글의 설명처럼 기본적인 선 연결만 잘 해주면 사용하는데 아무런 지장이 없다.
하지만 요즘에는 좀 더 많은 기능을 활용할 수 있도록 공유기가 나오고 있다.
이런 기능들에 대해서 살펴보자
우선 앞의 글을 읽고 이해를 해야 한다.
1. 포트포워딩
Portforwarding 이란 공인 아이피 쪽의 특정 포트로 패킷이 들어오면 그것을 사설아이피 쪽으로 포트를 변경해서
패킷을 전달해주는 기능이다.
예를 들어 외부에서 21번 FTP 요청이 들어왔을 때 사설아이피쪽의 PC 에 FTP 서버가 8000 으로 서비스를 돌려놓고 있다면,
외부의 네트워크에 있는 사용자는 공유기 아래의 사설PC 쪽으로 FTP 접속이 불가능하다.
하지만 포트포워딩 기능을 이용함으로써 외부에서 21번으로 접속하더라도
내부 FTP 서버의 8000 번 포트로 FTP 패킷이 전달되도록 할 수 있다.
거꾸로 외부에서 8000 번 포트로 FTP 패킷이 들어오면 공유기 아래의 PC 의 21번 포트로 FTP 패킷을 전달해줄 수 있다.
이것은 TCP 규격에 정의된 서비스들을 이용하거나 또는 개인이 사용하는 특정 프로그램의 포트를 포트포워드해서
내부에서 이용이 가능하도록 하게 해주는 것이다.
대표적인 서비스들은 윈도우원격데스크톱 기능 이라든가 HTTP, HTTPS, FTP, POP3, SMTP, TELNET, PPTP,
등이며 요즘 공유기는 인터넷 전화까지 지원이 가능하다.
하지만 중요한 것은 사설PC 쪽의 아이피를 지정해서 포트포워딩을 하는 것이기 때문에
공유기 아래의 내부PC가 특정한 사설아이피를 가지도록 ( 예를 들어 192.168.0.10 과 같이 고정되도록 )
설정을 해야 한다.
( 즉 PC 의 아이피를 위와 같이 192.168.0.10 으로 고정을 하거나 또는 공유기에서 특정 MAC address 를 가지는 PC의 랜카드가 특정한 사설아이피를 가지도록 설정하는 두가지 방법이 있다 )
'네트워크 기초' 카테고리의 다른 글
FTP 이란? File Transfer Protocol (2) | 2010.09.27 |
---|---|
공유기 기능 - 고급기능4 ( WOL ) (0) | 2010.04.21 |
공유기기능 - 고급기능3 TwinIP (0) | 2010.04.06 |
공유기 기능 - 고급기능2 ( DMZ ) (0) | 2010.03.17 |
공유기 - 기본지식편 (0) | 2010.02.25 |
브리지와 스위치의 차이점 (1) | 2009.12.18 |
OSI 7 layer 설명 (2) | 2009.12.18 |
네트워크 관련 볼것 (0) | 2009.11.27 |
2010. 2. 25. 20:17
공유기 - 기본지식편
2010. 2. 25. 20:17 in 네트워크 기초
히들 인터넷공유기라고 하는 것인데
외국에서는 home router 라고 표현을 한다.
가정집에서 사용하는 인터넷회선은 1 PC 만 인터넷을 사용할 수 있는데
요즘에는 집마다 데스크탑도 있고 노트북도 있는 상황이 얼마든지 있을 수 있기 때문에 많이들 공유기를 사용한다.
(1) NAT 기능 ( Network Address Translation )
공유기는 외부( 즉 공유기의 위쪽 WAN ) 의 공인IP 를 받아서
내부 ( 즉 공유기의 아래쪽 LAN ) 의 PC 들에게 사설IP 를 부여해준다.
공유기가 하는 역할은 동시에 여러 PC 에서 인터넷을 할 수 있도록 해주는 것이다.
사실 굳이 개념을 몰라도 꼽는 포트만 알면 사용하는데 아무런 문제도 없지만 조금 더 알고 사용한다면 공유기의 여러가지 편리한 기능을 사용할 수 있게 된다.
외부WAN ( 공인아이피 ) --> 공유기 WAN 포트(한개) --> 공유기 --> 공유기 LAN포트 (여러개) --> 여러 PC
이렇게 물리적인 라인을 볼 수 있다.
공인아이피와 사설아이피의 개념을 쉽게 설명하자면
공인아이피는 ISP ( Internet Service Provider 인터넷서비스제공업체 KT 나 하나로 파워콤이 되겠죠? ) 로부터
가입자인 개인의 가정에까지 선을 연결해서 인터넷을 연결해주고 서비스가 가능하게 하기 위한 세계에 유일한 아이피라고 보면 된다. 즉 인터넷에 연결된 PC 들 중에 현재 내 PC 의 아이피를 가진 PC 는 오직 나밖에 없는 유일한 아이피이다.
사설아이피는 말에서처럼 특정 네트워크 안에서 ( 여기서는 집이겠죠 ) 사용하는 아이피로
공인아이피와는 많이 다릅니다.
몇가지 자주 사용하는 사설아이피가 있습니다.
192.168.X.X 대역이나 예전 공유기 같은 경우에는 10.0.0.X 대역을 사용합니다.
또한 C 클래스를 보통 사용하지요 C 클래스라면 보통 192.168.0.2 ~ 192.168.0.254 까지 PC 들을 사용할 수 있습니다. 이것은 서브넷에 대해서 따로 공부하시면 알 수 있습니다.
즉 하나의 공유기 밑에 250 여대의 PC 가 아이피를 받아서 사용할 수 있는 것이죠
그렇게 하기 위해서 NAT ( Network Address Translation ) 이란 것을 사용합니다.
말 그대로 사설아이피를 받아서 공인아이피로 바꿔주고 반대로도 동작하는 것이죠.
(2) DHCP 기능 ( Dynamic Host Configuration Protocol )
ISP 로부터 1개의 공인아이피를 받아서 여러개의 PC 에 사설아이피를 분배해주고 ( DHCP ) 인터넷이 가능하도록 만들어 주는 것입니다.
여러개의 PC 에 사설아이피를 나눠주는 것은 바로 DHCP 를 사용합니다.
DHCP ( Dynamic Host Configuratioon Protocol ) 은 사용하고자 하는 PC 가 여유의 아이피를 알려달라고 DHCP 서버 쪽으로 요청하고 요청받은 DHCP 서버는 클라이언트에게 (PC) 사용하지 않는 IP 를 할당하고 알려줘서 클라이언트가 IP 를 사용할 수 있게 분배해주게 됩니다.
만약 클라이언트PC가 꺼지면 다시 사용하던 IP 를 회수해서 다른 PC 가 사용할수 있도록 하게 해주죠.
외부 ISP 업체에서 볼때에는 공유기 아래 2개의 PC 에서 각각 하나씩만 IE (인터넷익스플로러) 를 띄울때
2개의 IE 가 떠서 사용하는 것처럼 보이겠지요 ? ㅋ
위에서 설명한 것은 기본적인 공유기의 기능입니다.
요즘 나오는 공유기에는 여러가지 기능이 있지요.
예전에는 단지 유선만 되었다가 무선 (WiFi) 의 기능이 추가되었구요
다음 글에서 추가적인 기능을 알아보도록 하지요 ^^
외국에서는 home router 라고 표현을 한다.
가정집에서 사용하는 인터넷회선은 1 PC 만 인터넷을 사용할 수 있는데
요즘에는 집마다 데스크탑도 있고 노트북도 있는 상황이 얼마든지 있을 수 있기 때문에 많이들 공유기를 사용한다.
(1) NAT 기능 ( Network Address Translation )
공유기는 외부( 즉 공유기의 위쪽 WAN ) 의 공인IP 를 받아서
내부 ( 즉 공유기의 아래쪽 LAN ) 의 PC 들에게 사설IP 를 부여해준다.
공유기가 하는 역할은 동시에 여러 PC 에서 인터넷을 할 수 있도록 해주는 것이다.
사실 굳이 개념을 몰라도 꼽는 포트만 알면 사용하는데 아무런 문제도 없지만 조금 더 알고 사용한다면 공유기의 여러가지 편리한 기능을 사용할 수 있게 된다.
외부WAN ( 공인아이피 ) --> 공유기 WAN 포트(한개) --> 공유기 --> 공유기 LAN포트 (여러개) --> 여러 PC
이렇게 물리적인 라인을 볼 수 있다.
공인아이피와 사설아이피의 개념을 쉽게 설명하자면
공인아이피는 ISP ( Internet Service Provider 인터넷서비스제공업체 KT 나 하나로 파워콤이 되겠죠? ) 로부터
가입자인 개인의 가정에까지 선을 연결해서 인터넷을 연결해주고 서비스가 가능하게 하기 위한 세계에 유일한 아이피라고 보면 된다. 즉 인터넷에 연결된 PC 들 중에 현재 내 PC 의 아이피를 가진 PC 는 오직 나밖에 없는 유일한 아이피이다.
사설아이피는 말에서처럼 특정 네트워크 안에서 ( 여기서는 집이겠죠 ) 사용하는 아이피로
공인아이피와는 많이 다릅니다.
몇가지 자주 사용하는 사설아이피가 있습니다.
192.168.X.X 대역이나 예전 공유기 같은 경우에는 10.0.0.X 대역을 사용합니다.
또한 C 클래스를 보통 사용하지요 C 클래스라면 보통 192.168.0.2 ~ 192.168.0.254 까지 PC 들을 사용할 수 있습니다. 이것은 서브넷에 대해서 따로 공부하시면 알 수 있습니다.
즉 하나의 공유기 밑에 250 여대의 PC 가 아이피를 받아서 사용할 수 있는 것이죠
그렇게 하기 위해서 NAT ( Network Address Translation ) 이란 것을 사용합니다.
말 그대로 사설아이피를 받아서 공인아이피로 바꿔주고 반대로도 동작하는 것이죠.
(2) DHCP 기능 ( Dynamic Host Configuration Protocol )
ISP 로부터 1개의 공인아이피를 받아서 여러개의 PC 에 사설아이피를 분배해주고 ( DHCP ) 인터넷이 가능하도록 만들어 주는 것입니다.
여러개의 PC 에 사설아이피를 나눠주는 것은 바로 DHCP 를 사용합니다.
DHCP ( Dynamic Host Configuratioon Protocol ) 은 사용하고자 하는 PC 가 여유의 아이피를 알려달라고 DHCP 서버 쪽으로 요청하고 요청받은 DHCP 서버는 클라이언트에게 (PC) 사용하지 않는 IP 를 할당하고 알려줘서 클라이언트가 IP 를 사용할 수 있게 분배해주게 됩니다.
만약 클라이언트PC가 꺼지면 다시 사용하던 IP 를 회수해서 다른 PC 가 사용할수 있도록 하게 해주죠.
여담이지만 DHCP 가 나왔던 이유는 적은 수의 아이피를 가진 곳에서 가진 아이피의 개수보다 많은 PC를
사용하기 위해서이지 않았을까요? 지금은 랜선만 꼽으면 바로 아이피를 받기위해서 더 많이 사용하겠지만요. ^^
사용하기 위해서이지 않았을까요? 지금은 랜선만 꼽으면 바로 아이피를 받기위해서 더 많이 사용하겠지만요. ^^
외부 ISP 업체에서 볼때에는 공유기 아래 2개의 PC 에서 각각 하나씩만 IE (인터넷익스플로러) 를 띄울때
2개의 IE 가 떠서 사용하는 것처럼 보이겠지요 ? ㅋ
위에서 설명한 것은 기본적인 공유기의 기능입니다.
요즘 나오는 공유기에는 여러가지 기능이 있지요.
예전에는 단지 유선만 되었다가 무선 (WiFi) 의 기능이 추가되었구요
다음 글에서 추가적인 기능을 알아보도록 하지요 ^^
'네트워크 기초' 카테고리의 다른 글
FTP 이란? File Transfer Protocol (2) | 2010.09.27 |
---|---|
공유기 기능 - 고급기능4 ( WOL ) (0) | 2010.04.21 |
공유기기능 - 고급기능3 TwinIP (0) | 2010.04.06 |
공유기 기능 - 고급기능2 ( DMZ ) (0) | 2010.03.17 |
공유기 기능 - 고급기능1 ( 포트포워딩 ) (0) | 2010.03.03 |
브리지와 스위치의 차이점 (1) | 2009.12.18 |
OSI 7 layer 설명 (2) | 2009.12.18 |
네트워크 관련 볼것 (0) | 2009.11.27 |
2009. 12. 23. 22:37
28. CentOS 에서 yum 수행시 repo 사이트 추가
2009. 12. 23. 22:37 in 내가쓰는리눅스 강좌
CentOS 에서는 yum 이라는 명령어로 rpm 을 관리해준다.
연관성이 있는 rpm 들을 체크해서 같이 설치를 해주기 때문에
rpm 이 설치되고 나서 실행이 안되는 경우를 방지해준다.
수행 방법은 rpm 의 이름으로 yum 명령어를 치면 된다.
예를 들어 ethereal 을 설치할려고 한다면
리눅스 터미널상에서 다음과 같이 입력한다 .
그러면 ethereal 로 시작하는 rpm 들을 연관성 체크해서 같이 설치를 진행하게 된다.
여기서 문제는 잘 사용하지 않거나 rpmforge 에 있는 rpm 들도 같이 yum 을 통해서 설치 가능하도록 하려면
repo 파일을 수정하거나 추가로 설치해야 한다.
아래는 기본적인 repo 의 정보가 들어있는 파일들이다.
CentOS wiki 사이트에서 자세한 방법을 설명하고 있으니 다음 링크 클릭해서 그대로 따라 하면 되겠다.
http://wiki.centos.org/AdditionalResources/Repositories/RPMForge
쉽게 CentOS 설치하고 나서 터미널에서 다음과 같이 치면 된다.
하고 나서 테스트로 mplayer 를 한번 설치 전 단계까지 해본다.
yum install mplayer
그럼 중간에 설치할 것인지 말 것인지 [y/n] 를 물어보고 n 를 입력하면 설치 취소가 된다.
연관성이 있는 rpm 들을 체크해서 같이 설치를 해주기 때문에
rpm 이 설치되고 나서 실행이 안되는 경우를 방지해준다.
수행 방법은 rpm 의 이름으로 yum 명령어를 치면 된다.
예를 들어 ethereal 을 설치할려고 한다면
리눅스 터미널상에서 다음과 같이 입력한다 .
yum -y install ethereal*
그러면 ethereal 로 시작하는 rpm 들을 연관성 체크해서 같이 설치를 진행하게 된다.
여기서 문제는 잘 사용하지 않거나 rpmforge 에 있는 rpm 들도 같이 yum 을 통해서 설치 가능하도록 하려면
repo 파일을 수정하거나 추가로 설치해야 한다.
아래는 기본적인 repo 의 정보가 들어있는 파일들이다.
[root@localhost yum.repos.d]# ls -l
total 20
-rw-r--r-- 1 root root 2389 Dec 23 22:29 CentOS-Base.repo
-rw-r--r-- 1 root root 626 Mar 17 2009 CentOS-Media.repo
total 20
-rw-r--r-- 1 root root 2389 Dec 23 22:29 CentOS-Base.repo
-rw-r--r-- 1 root root 626 Mar 17 2009 CentOS-Media.repo
CentOS wiki 사이트에서 자세한 방법을 설명하고 있으니 다음 링크 클릭해서 그대로 따라 하면 되겠다.
http://wiki.centos.org/AdditionalResources/Repositories/RPMForge
쉽게 CentOS 설치하고 나서 터미널에서 다음과 같이 치면 된다.
(1) yum install yum-priorities
(2) vi /etc/yum/pluginconf.d/priorities.conf
여기서
[main]
enabled=1
라고 되어 있는지 확인
(3) cd /etc/yum.repos.d/
두개 파일에서 CentOS-Base.repo 과 CentOS-Media.repo 을 열어서 마지막 라인에
다음과 같이 추가
priority=1
(4) wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.i386.rpm
(5) rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
(6) rpm -K rpmforge-release-0.5.1-1.el5.rf.*.rpm
(7) yum check-update
하고 나서 테스트로 mplayer 를 한번 설치 전 단계까지 해본다.
yum install mplayer
그럼 중간에 설치할 것인지 말 것인지 [y/n] 를 물어보고 n 를 입력하면 설치 취소가 된다.
'내가쓰는리눅스 강좌' 카테고리의 다른 글
리눅스에서 임의의 파일 생성 (2) | 2010.11.16 |
---|---|
리눅스 VNCSERVER 설정 방법 (3) | 2010.07.14 |
텍스트 파일을 잘라보자. split (0) | 2010.05.31 |
리눅스 시스템의 부팅시 파일무결성 체크 강제로 하기 (0) | 2010.04.19 |
리눅스 dmesg 를 통한 eth 포트의 down / up 구분 (0) | 2010.03.30 |
27. CentOS 에서의 한글 설정 (3) | 2009.11.24 |
26. ethtool 사용하기 speed 와 duplex 변경 (6) | 2009.11.23 |
25. sort 명령어 (2) | 2009.11.05 |
24. tar 압축파일에 관해서 (0) | 2009.09.15 |
23. man 페이지 내용을 파일로 보자. (2) | 2009.04.23 |
2009. 12. 22. 14:08
15. 텍스트 파일 포맷 변경
2009. 12. 22. 14:08 in 쉘스크립트
파일포맷을 확인하는 방법
[root@localhost ~]# file test
test: ASCII text
test: ASCII text
file 명령어는 ASCII 파일인지 UTF-8 인지 UNICODE 인지 확인하는 명령어
텍스트의 포맷이 일정하지 않아서 스크립트로 처리시에 오류가 생길 경우는
recode 명령어를 통해서 포맷을 일정하게 해주는 것이 좋다.
yum -y install recode 를 통해서 리눅스 CentOS 에 설치하고
recode -l 으로 포맷형식들을 확인
recode -f UTF-8 <파일명> 이라고 명령을 내리면 해당 파일이 UTF-8 로 포맷형식이 바뀌게 된다.
dos2unix 명령어는 VI 편집기로 열었을 때 라인끝에 ^M 이라는 문자가 보이는 경우가 있다
이것을 지워주는 역할을 한다.
그리고 Col 필터는 "\n\r" 문자를 "\n" 문자로 바꾸어 주는 필터이다. 또한 공백문자
를 탭문자로 바꾸고, 백스페이스 문자를 없애는 기능을한다
( 참고 : http://darkrang.tistory.com/117 )
따라서 vi 편집기로 열었을 때에 전체적으로 이상한 기호가 보이거나 한다면
위의 recode 명령어를 사용해서 텍스트 파일의 포맷을 변경해야 한다.
또한 recode 는 * 를 지원하므로
recode -f utf-8 *.txt 라고 적어도 모든 txt 파일에 대해서 적용된다.
recode -v <소스인코딩>...<출력인코딩> <파일명>
recode -v EUC-KR...UTF-8 *.txt
recode -v EUC-KR...UTF-8 *.txt
다음은 현재 디렉토리 안의 파일들의 txt 파일만 찾아서 파일포맷을 변경하는 스크립트이다
#!/bin/bash
DIR=$PWD
count=0
ls -l *.txt | awk '{print $9}' > filelist
for file in `cat $DIR/filelist`
do
recode -f UTF-8 $file
cat $file | col -b > imsy.txt
sort -u imsy.txt > $file
count=`expr $count + 1`
done
'쉘스크립트' 카테고리의 다른 글
파일 비교 스크립트 8 (0) | 2011.09.03 |
---|---|
날짜 표시 쉘 스크립트 (0) | 2011.08.05 |
파일 라인안에 앞에 내용 추가 / 맨뒤에 내용 추가 방법 (0) | 2011.06.17 |
파일비교 스크립트 5 (2) | 2010.05.25 |
파일들의 확장자만 변경 (0) | 2010.04.22 |
14. 지난 파일 압축하고 삭제하기 (2) | 2009.12.18 |
13. 파일 비교 스크립트 4 (2) | 2009.11.05 |
12. 파일 개수 비교해서 삭제하는 스크립트 (3) | 2009.10.21 |
11. SSH 접속 차단 스크립트 ( 5번 패스워드 틀리면 자동 차단) (2) | 2009.09.19 |
10. 파일비교 스크립트2 (3) | 2009.09.18 |
2009. 12. 18. 21:16
14. 지난 파일 압축하고 삭제하기
2009. 12. 18. 21:16 in 쉘스크립트
자 드뎌 완성 버전? 인가? ㅋ
ㅋㅋ
ㅋㅋ
#!/bin/bash ## Day and DIR configuration DATE=`date +%y%m%d` echo "date is $DATE" DIR=`echo $PWD` echo $DIR ## Decide period "A" is the range of the keeping days A=3 ## Tar and gzip compress find $DIR -mtime +$A > $DIR/imsy.txt tar -cvf $DATE.tar `find $PWD -mtime +$A` gzip $DATE.tar ## remove old files cat $PWD/imsy.txt | sed -n '/txt/p' > $PWD/imsy2.txt cat $PWD/imsy2.txt > $PWD/imsy.txt for B in `cat $PWD/imsy.txt` do echo $B # rm -rf $PWD/$B done
우선 이 스크립트의 기능은 특정 디렉토리안에 쌓이는 파일들이 계속 있을 경우
특정날짜만큼만 디렉토리에 그대로 두고
예를 들어 3 일이 지난 파일들은 모두 tar.gz 로 압축을 하고 나서
압축된 파일들은 지워버림.ㅋㅋ
find ${DIR} -type f -mtime +7 | xargs rm -f 이건??
'쉘스크립트' 카테고리의 다른 글
날짜 표시 쉘 스크립트 (0) | 2011.08.05 |
---|---|
파일 라인안에 앞에 내용 추가 / 맨뒤에 내용 추가 방법 (0) | 2011.06.17 |
파일비교 스크립트 5 (2) | 2010.05.25 |
파일들의 확장자만 변경 (0) | 2010.04.22 |
15. 텍스트 파일 포맷 변경 (2) | 2009.12.22 |
13. 파일 비교 스크립트 4 (2) | 2009.11.05 |
12. 파일 개수 비교해서 삭제하는 스크립트 (3) | 2009.10.21 |
11. SSH 접속 차단 스크립트 ( 5번 패스워드 틀리면 자동 차단) (2) | 2009.09.19 |
10. 파일비교 스크립트2 (3) | 2009.09.18 |
9. 여러 파일 하나의 txt 파일로 합치기 스크립트 (3) | 2009.09.10 |
2009. 12. 18. 12:23
브리지와 스위치의 차이점
2009. 12. 18. 12:23 in 네트워크 기초
우선 네트워크가 이뤄지는 OSI 7 Layer 를 보면 다음과 같다. ( 자세한 설명은 이전 글 http://darkrang.tistory.com/155 참조 )
1. 물리계층 ( Physical layer )
2. 데이터 링크 계층 ( Data link layer )
3. 네트워크 계층 ( Network layer )
4. 전송 계층 ( Transport layer )
5. 세션 계층 ( Session layer )
6. 표현 계층 ( Presentation layer )
7. 응용 계층 ( Application layer )
여기서 브리지가 속하는 것은 2단계 데이터링크계층에 속하는 장비이다. 즉 레이어2 에 속하는 장비이며
스위치는 3단계 네트워크 계층에 속하는 장비임 즉 레이어3 .
차이점을 간략히 설명하면 다음과 같다.
브리지는 콜리전 도메인(collision domain)을 나눠주기 위해서 만들어졌음
( 참고로 콜리전 도메인은 한마디로 PC 들의 묶음이라고 생각하면 될듯 , 여러 개의 네트워크 장비나 호스트가
동일한 미디어에 연결되어 있어 두 대의 호스트가 동시에 데이터를 보낼 때 충돌이 일어나는 범위
즉 허브로 연결된 수십대의 컴퓨터의 네트워크 범위를 뜻함
만약 콜리전 도메인을 이루는 PC 가 많아지면 많아질 수록 서로의 통신에 영향을 주게 되어
통신 속도가 저하됨 )
브리지가 하는 역할은 다음과 같음
(1) Learning : 포트에 연결된 출발지의 Mac address 를 브리지안의 맥테이블에 저장하는 기능
(2) Flooding : 만약 목적지 주소가 송신지와는 다른 네트워크에 존재하며 mac table에 목적지 주소가 이미 존재하고 있다면 테이블에 있는 정보를 이용하여 적절한 경로를 결정한 다음, 해당하는, 전송로로 패킷을 전송한다.
만약 table에 목적지 주소가 등록되어 있지 않으면 목적지에 해당하는 장치가 어느 네트워크에 속해 있는지 알길이 없으므로 Frame이 수신되어온 회선을 제외한 모든 전송 회선으로 Flooding(ff:ff:ff:ff:ff:ff) Frame을 보낸다.
(3) Forwarding : 목적지 주소가 출발지 주소와 다른 세그먼트에 위치하는 경우 bridge가 자신의 테이블을 살펴서 어떤 포트로 길을 열어줘야 하는가를 확인 한 다음 그 포트로 프레임을 전달하는 역할은 한다.
( ※ Flooding 은 들어온 포트 이외의 모든 포트로 뿌리는 것이고, Forwarding 은 들어온 포트말고 해당 목적지 포트로만 내보내는 것 )
(4) Filtering : 목적지 주소와 출발지 주소가 같은 세그먼트 상에 존재한다면, 즉 bridge를 건너가지 않고도 통신이 일어날 수 있다면, 나머지 모든 포트로 이 프렘이 건너가는 걸 막는 역할을 한다.
출발지의 MAC address와 목적지의 MAC address가 같은 port에 연결된 경우
(같은 콜리젼 도메인, 같은 segment, 같은 LAN... 모두 같은말입니다.) 브리지를 넘어가지 못하도록 막아줍니다.
( ※ 이 기능이 바로 위에서 설명한 콜리전 도메인을 나눈다는 말 )
(5) Aging : table에 MAC address를 언제까지나 저장해 놓을 수 없기 때문에 일정 시간이 지나면 table에서 지웁니다.(기본 300초)
*aging에 설정된 시간동안 해당 MAC address의 통신이 없으면 table에서 삭제
( ※ 이렇게 지워져도 새로운 MAC address 가 들어오면 (1) 번의 Learning 에서 다시 MAC address 를 저장한다 )
브리지의 처리방식
※ Store-and-forwarding
- 스위치나 브리지가 일단 들어오는 프레임을 전부 받아 들인 후, 처리를 시작하는 방식. 프레임을 모두 받아 들이고 나서, 제대로 들어왔는지, 에러가 없는지, 출발지 주소, 목적지 주소가 어디인지 파악해서 처리 해주는 방식. 이때 에러가 발견 되면 브리지나 스위치는 프레임을 버리고 재 전송을 요구하기 때문에 에러 복구능력이 뛰어나다는 장점이 있다.
--> 모든 프레임을 다 받고 나서야 분석하고 그 다음에 처리가 되기 때문에 당연히 처리 속도가 느릴 것
※ Cut-though
- 스위치가 들어오는 프레임의 목적지 주소만을 본 다음 바로 전송 처리를 시작하는 방식. Store-and-forwarding 보다 처리속도가 빠르다는 장점이 있지만, 프레임에 발생 했을지 모르는 에러를 찾아내기 어렵다는 단점이 있다.
--> 프레임 헤더만 보고 처리하기 때문에 처리속도는 빠르지만 FCS 를 이용한 CRC (Cyclic Redundancy Check) 를 하지 않기 때문에 중간에 데이터가 잘못 들어오는 경우에는 확인할 방법이 없다.
이렇게 되고 스위치(Switch) 는 브리지의 모든 기능을 가지고 있다.
요즘에는 스위치가 더 활발하게 사용되므로 머 브리지를 쓰는 곳은 별로 없을 듯.
웹에서 찾아보니 오히려 백본망에서 잘 사용된다고 하던데.
스위치도 여러가지로 나눠져서 L2 ( Layer 2 ) 스위치 와 L3 스위치, L4 스위치 등등
네트워크장비들도 단순히 어느 Layer 에 어느 장비가 속한다라고 말할 수 없게 되었다.
1. 물리계층 ( Physical layer )
2. 데이터 링크 계층 ( Data link layer )
3. 네트워크 계층 ( Network layer )
4. 전송 계층 ( Transport layer )
5. 세션 계층 ( Session layer )
6. 표현 계층 ( Presentation layer )
7. 응용 계층 ( Application layer )
여기서 브리지가 속하는 것은 2단계 데이터링크계층에 속하는 장비이다. 즉 레이어2 에 속하는 장비이며
스위치는 3단계 네트워크 계층에 속하는 장비임 즉 레이어3 .
차이점을 간략히 설명하면 다음과 같다.
브리지 ( Bridge ) | 스위치 ( Switch ) | |
처리방식 | 소프트웨어 | 하드웨어 |
Port 별 속도 | 같음 | 다른 속도도 지원 |
Port 수 | 2~3개 | 10~몇백개 |
처리방식 및 속도 | Cut-though 또는 Store-and-forwarding 스위치에 비해 느림 | Store-and-forwarding 브리지에 비해 빠름 |
브리지는 콜리전 도메인(collision domain)을 나눠주기 위해서 만들어졌음
( 참고로 콜리전 도메인은 한마디로 PC 들의 묶음이라고 생각하면 될듯 , 여러 개의 네트워크 장비나 호스트가
동일한 미디어에 연결되어 있어 두 대의 호스트가 동시에 데이터를 보낼 때 충돌이 일어나는 범위
즉 허브로 연결된 수십대의 컴퓨터의 네트워크 범위를 뜻함
만약 콜리전 도메인을 이루는 PC 가 많아지면 많아질 수록 서로의 통신에 영향을 주게 되어
통신 속도가 저하됨 )
브리지가 하는 역할은 다음과 같음
(1) Learning : 포트에 연결된 출발지의 Mac address 를 브리지안의 맥테이블에 저장하는 기능
(2) Flooding : 만약 목적지 주소가 송신지와는 다른 네트워크에 존재하며 mac table에 목적지 주소가 이미 존재하고 있다면 테이블에 있는 정보를 이용하여 적절한 경로를 결정한 다음, 해당하는, 전송로로 패킷을 전송한다.
만약 table에 목적지 주소가 등록되어 있지 않으면 목적지에 해당하는 장치가 어느 네트워크에 속해 있는지 알길이 없으므로 Frame이 수신되어온 회선을 제외한 모든 전송 회선으로 Flooding(ff:ff:ff:ff:ff:ff) Frame을 보낸다.
(3) Forwarding : 목적지 주소가 출발지 주소와 다른 세그먼트에 위치하는 경우 bridge가 자신의 테이블을 살펴서 어떤 포트로 길을 열어줘야 하는가를 확인 한 다음 그 포트로 프레임을 전달하는 역할은 한다.
( ※ Flooding 은 들어온 포트 이외의 모든 포트로 뿌리는 것이고, Forwarding 은 들어온 포트말고 해당 목적지 포트로만 내보내는 것 )
(4) Filtering : 목적지 주소와 출발지 주소가 같은 세그먼트 상에 존재한다면, 즉 bridge를 건너가지 않고도 통신이 일어날 수 있다면, 나머지 모든 포트로 이 프렘이 건너가는 걸 막는 역할을 한다.
출발지의 MAC address와 목적지의 MAC address가 같은 port에 연결된 경우
(같은 콜리젼 도메인, 같은 segment, 같은 LAN... 모두 같은말입니다.) 브리지를 넘어가지 못하도록 막아줍니다.
( ※ 이 기능이 바로 위에서 설명한 콜리전 도메인을 나눈다는 말 )
(5) Aging : table에 MAC address를 언제까지나 저장해 놓을 수 없기 때문에 일정 시간이 지나면 table에서 지웁니다.(기본 300초)
*aging에 설정된 시간동안 해당 MAC address의 통신이 없으면 table에서 삭제
( ※ 이렇게 지워져도 새로운 MAC address 가 들어오면 (1) 번의 Learning 에서 다시 MAC address 를 저장한다 )
브리지의 처리방식
※ Store-and-forwarding
- 스위치나 브리지가 일단 들어오는 프레임을 전부 받아 들인 후, 처리를 시작하는 방식. 프레임을 모두 받아 들이고 나서, 제대로 들어왔는지, 에러가 없는지, 출발지 주소, 목적지 주소가 어디인지 파악해서 처리 해주는 방식. 이때 에러가 발견 되면 브리지나 스위치는 프레임을 버리고 재 전송을 요구하기 때문에 에러 복구능력이 뛰어나다는 장점이 있다.
--> 모든 프레임을 다 받고 나서야 분석하고 그 다음에 처리가 되기 때문에 당연히 처리 속도가 느릴 것
※ Cut-though
- 스위치가 들어오는 프레임의 목적지 주소만을 본 다음 바로 전송 처리를 시작하는 방식. Store-and-forwarding 보다 처리속도가 빠르다는 장점이 있지만, 프레임에 발생 했을지 모르는 에러를 찾아내기 어렵다는 단점이 있다.
--> 프레임 헤더만 보고 처리하기 때문에 처리속도는 빠르지만 FCS 를 이용한 CRC (Cyclic Redundancy Check) 를 하지 않기 때문에 중간에 데이터가 잘못 들어오는 경우에는 확인할 방법이 없다.
이렇게 되고 스위치(Switch) 는 브리지의 모든 기능을 가지고 있다.
요즘에는 스위치가 더 활발하게 사용되므로 머 브리지를 쓰는 곳은 별로 없을 듯.
웹에서 찾아보니 오히려 백본망에서 잘 사용된다고 하던데.
스위치도 여러가지로 나눠져서 L2 ( Layer 2 ) 스위치 와 L3 스위치, L4 스위치 등등
네트워크장비들도 단순히 어느 Layer 에 어느 장비가 속한다라고 말할 수 없게 되었다.
'네트워크 기초' 카테고리의 다른 글
FTP 이란? File Transfer Protocol (2) | 2010.09.27 |
---|---|
공유기 기능 - 고급기능4 ( WOL ) (0) | 2010.04.21 |
공유기기능 - 고급기능3 TwinIP (0) | 2010.04.06 |
공유기 기능 - 고급기능2 ( DMZ ) (0) | 2010.03.17 |
공유기 기능 - 고급기능1 ( 포트포워딩 ) (0) | 2010.03.03 |
공유기 - 기본지식편 (0) | 2010.02.25 |
OSI 7 layer 설명 (2) | 2009.12.18 |
네트워크 관련 볼것 (0) | 2009.11.27 |