2019/04: 4개의 글

[리눅스공통] 리눅스의 특징 (장점, 단점)

Posted by nkjok
2019. 4. 27. 14:36 OS&기타/Linux
반응형

1. 리눅스의 특징

 


① 다중 사용자 및 다중 처리 시스템

하나의 시스템에 다수의 사용자들이 동시에 접속하여 사용할 수 있고(Multi-User), 각 접속자들은 다수의 응용 프로그램을 실행할 수 있다.(Multitasking)

② 완전히 공개된 시스템

운영체제의 핵심인 커널(Kernel) 뿐만 아니라, 같이 내장되어 배포되는 대부분의 응용 프로그램이 소스가 공개된 프로그램이다.

③ 뛰어난 네트워크 환경

가장 널리 쓰이는 이더넷(Ethernet), SLIP, PPP, ATM 등의 다양한 네트워크 환경을 지원하여 TCP/IP, IPX, AppleTalk 등 대부분의 네트워크 프로그램을 지원한다.

④ 다양한 파일 시스템 지원

DOS의 FAT, Windows의 FAT32 및 NTFS, CD-ROM에 사용되는 ISO 9660, OS/2의 HPFS, SCO 및 제닉스 등의 상용 유닉스, 파일 시스템을 지원한다.

⑤ 뛰어난 이식성

리눅스는 약간의 어셈브리와 대부분의 C언어로 작성되어 있다. C를 컴파일 할 수 있으며, 어셈블리 부분만 새롭게 만들고 C부분을 다시 컴파일 함으로써 쉽게 다른 시스템에 이식 할 수 있다.

⑥ 유연성과 확장성

리눅스는 상업용 유닉스(UNIX)의 모든 특성을 가지며 유닉스의 표준인 포직스(POSIX)를 준수하고 있다. 커널, 장치드라이버, 라이브러리, 응용프로그램, 개발도구 등 리눅스의 원시코드를 쉽게 접할 수 있다.

⑦ 뛰어난 안전성과 보안성

리눅스는 커널 소스가 공개되어 있어 Windows와 같은 폐쇄형 운영체제에 비해 보안상의 취약점이 쉽게 노출된 가능성은 있으나, 공개용 소프트웨어를 지지하는 수많은 전문 프로그래머들이 상용 운영체제보다 빠르게 오류 수정과 보안 관련된 패치를 발표하고 있다.

⑧ 우수한 가격대 성능비

기업환경에서 서버로 사용되는 유닉스를 x86 시스템에 최적화시켜 효율적인 방식으로 설계하였기 때문에 PC급 서버에서도 엔터프라이즈 급의 성능을 발휘 할 수 있다.

⑨ 다양한 응용 프로그램의 제공

리눅스에는 운영체제의 핵심인 커널을 비롯하여 다양한 응용 프로그램을 제공한다. 셀(Shell)과 기본 명령어, X Window 시스템(Xorg, KDE, GNOME 등의 그래픽 유저 인터페이스), 편집기(vi, emacs 등), 서버 및 클라이언트 프로그램(웹, 메일, FTP 등), 개발도구(C, C++, Java, Python 등), 보안도구(nmap, tcpdump 등), 게임 등을 포함하여 배포하고 있다.

⑩ 다양한 배포판의 존재

리눅스는 서버, 개발용, PC용 등 다양한 목적으로 사용 가능하고, 이에 따른 다양한 배포판이 존재한다. 국외에는 레드햇(Redhat), 데비안(Debian), 우분투(Ubuntu), 수세(SUSE) 등이 있고, 국내에는 한컴리눅스, SULinux 등이 있다.

 

 

 

 

2. 리눅스의 기술적인 특징

 


① 계층적인 파일 구조

리눅스의 파일 구조는 /(root)를 기준으로 그 하위 디렉터리에 usr, var, bin 등이 존재하고 다시 usr 디렉터리 밑에는 local, src 등의 디렉터리가 존재하고 이러한 구조를 계층적 파일 구조라 하고 트리(Tree) 구조라고도 한다.

② 장치의 파일화

장치(Device)란 하드디스크, 키보드, 프린트, 화면 출력 장치 등 시스템에 설치된 여러 가지 하드웨어적 자원을 말한다. 리눅스는 이러한 장치들을 모두 파일화하여 사용한다. 특정 하드웨어에게 명령을 수행하려면 해당하는 장치 파일에 명령을 내리면 된다.

③ 가상 메모리 사용

가상 메모리(Virtual Memory)란 하드디스크의 일부를 메모리처럼 사용되는 것을 말한다. 하드디스크는 데이터가 저장되는 공간이고, RAM(메모리)는 작업공간이라 할 수 있다. 프로그램을 실행시키면 작업공간에 해당하는 메모리로 공간이 이동되는 데, 메모리의 공간이 작으면 큰 프로그램은 실행시킬 수 없게 된다. 이러한 문제점을 극복하기 위해 사용되는 것이 가상메모리이고, 리눅스에서는 이 영역을 스왑(SWAP)라고 부른다.

④ 동적 라이브러리 지원

프로그램에서 특정한 기능을 하는 루팅(Routine)들을 모아 놓은 것을 라이브러리(Library)라 하여, 프로그램 개발 시 라이브러리중에서 필요한 루틴들을 받아서 링크(Link) 시킨다. 그래서 같은 루틴들을 공유하는 것이 공유 라이브러리(Shared Library)라 한다.

동적 공유 라이브러리는(Dynamic Shared Library)는 실행 파일 내부에 넣어두지 않고, 프로그램을 실행할 때 가져다 사용하므로 메모리의 효율성이 아주 높다.

⑤ 가상 콘솔

가상 콘솔(Virtual Console)은 하나의 모니터를 장착한 시스템에 여러 개의 가상 화면을 제공해서 사용하게 하는 기능이다. 리눅스는 기본적으로 6개의 가상 콘솔을 제공한다. [CTRL] + [ALT] + [F1] ~ [CTRL] + [ALT] + [F6] 까지 총 6개의 텍스트 기반의 로그인 창을 제공한다.

⑥ 파이프

파이프는 프로세스의 통신을 위해 도입한 것으로 어떤 프로세스의 표준 출력이 다른 프로세스의 표준 입력으로 쓰이게 하는 것을 말한다. 파이프는 '|' 기호를 사용한다.

⑦ 리다이렉션(Redirection)

리다이렉션은 어떤 프로세스의 입/출력을 표준 입출력이 아닌 다른 입출력으로 변경할 때 사용한다. 출력 결과를 파일로 저장하거나 파일의 내용을 프로세스의 입력으로 사용하는 기법이다.

 

 

 


3. 리눅스의 단점

 


① 기술 지원의 부족

리눅스에서 사용되는 대부분의 응용 프로그램들이 비상업적인 제품이다. 전 세계에 흩어져 있는 개발자들이 일일이 기술지원을 하는 것이 불가능하다.

② 특정 하드웨어에 대한 지원이 부족

리눅스가 다른 운영체제에 비해 이식성, 확장성 등이 뛰어나지만, 여전히 특정한 하드웨어에 대한 설치가 어렵고 모든 플랫폼에서 작동하지 않는다.

③ 사용자의 숙련된 기술 요구

현재 리눅스에서는 X-Window 기반 환경이 보편화 되면서 초기 텍스트 기반의 명령어를 입력하는 환경에 비해 쉬워졌지만, 아직도 중요한 설정은 명령어를 입력하거나 관련 환경 설정 파일을 편집기를 사용해서 수정하여야 한다.

반응형

[Cisco] Router, Switch 기본 명령어

Posted by nkjok
2019. 4. 7. 14:14 네트워크-Router, Switch, Security
반응형

미리세컨드 1000분에 1초 한번전송하고 두번전송하고 시간은 미리세컨드
마이크로세컨드 1000,000분에 1초 컴퓨터

올라가면나누기 내려가면 곱하기

 

 


자기출구 설정 no sh
업업- sh ip int b

 

sh run 지금까지 설정한거 확인

 

스태틱
ip route 목적지대역 서브넷마스크 넥스트홉

 


router rip
network A.B.C.D
no au 노오토섬머리 버전2에만
ver 2 버전2
sh ip ro 확인

 


ospf
router ospf 1
network a.b.c.d 와일드마스크 area id (0)
sh ip ospf ne 네이버정보확인
sh ip ospf int 에어리어id 라우터id 인접성정보
sh ip ospf datebase 모든경로
clear ip ospf process ospf 재부팅

 


eigrp
router eigrp 1 (1이든 2든 다 같아야됨)
network a.b.c.d (와일드는 써도되고 안써도됨)
sh ip eigrp ne 네이버확인
sh ip protocols k상수, eigrp as넘버
sh ip eigrp topology ccnp에서 활용
sh ip eigrp int eigrp인터페이스정보
no auto 노오토섬머리 자동축약 안하는거
자동축약- 컴퓨터마음대로 생각하는걸 하지마라

 


스위치
sh sp (스페닝트리)맥, 블럭 (root브릿지랑 dp, rp, ap 정보)
sh vl 스위치가 가지고 있는 브이렌 정보(번호, 속한그룹)
sh vtp status (server ip, vtp 상태 server client등)
sh int t 트렁크확인
sh cdp ne 연결정보, 라우터버전

 


*ac3에서 vl 1의 root를 찾아라
-sh sp vl 1 포트가 root인걸 알수있고
-sh cdp ne 포트가 sw-ds1인걸 알수있다
-sh cdp ne detail v랜 알면 v랜 연결되있는 상대방 ip 확인가능
(엔트리 어드레스에 ip 어드레스를 알수있는데 서버에서 명령을 받으니까)
-no cdp run (cdp 끄기) cdp는 위험한 메세지

 

 

스위치 포트모드 엑세스(멤버설정)
switchport mode access
switchport access vlan ID

 


스위치 포트 모드 trunk
switchport mode trnk

 


포트 범위 설정
interface range fa 0/1 - 3
interface range fa 0/2 , 0/5

 


라우터 가상화 논리포트
int f0/0
no sh
int f0/0.1
encapsulation dot1q 1 (vlan ID)
ip add 192.168.1.1 255.255.255.0

 


(vtp 모드 설정) 서버,클라이언트 설정
vtp mode server
vtp domain naver (도메인이름이 다르면 동작안함,같으면 동작)

 


스위치 가상ip 할당방법(가상의 멤버생성)
(config-if)#int vlan 10
(config-if)#ip add 192.168.1.10 255.255.255.0
(config)#ip default-gateway 192.168.1.254

 


Revision 삭제하는 법
show flas (vlan.dat) 확인가능
delete vlan.dat 삭제

 


access-list(필터,분류)1-99(standard) 100-199(extended)
acc-list 100 permit tcp host 192.168.1.1 host 172.168.1.1 eq 80
acc-list 100 deny tcp any host 172.168.1.1 eq 80
acc-list 100 permit ip any any
좁은 범위의 것을 먼저 선언
호스트는 서브넷 입력 안함
나머지는 서브넷 입력
(config-if)# ip access-group 100 out(in)
명령어 입력하는 기준점 라우터에서 들어오면 in 나가면 out

 

 

NAT
static ( 1: 1 )
1.ip nat inside source static 192.168.1.1 200.1.1.1
(static,source,destination)
dynamic ( N : 1 )
1.ip nat inside source list 1 int s0/0/0 overload
1-1acc-list 1 permit 192.168.1.0 0.0.0.255
extended ( N : N ) - 리스트 , 리스트 번호 , 풀 , 풀 이름
1. ip nat inside source list 1 pool test
1-1 acc-list 1 permit 192.168.1.0 0.0.0.255
1-2 ip nat pool test 200.1.1.1 200.1.1.254 netmask 255.255.255.0
★overload(사설>공인ip)
(config - if)# ip nat inside - 사설 ip 출구
(config - if)# ip nat outside - 공인 ip 출구

 

 

시리얼 ppp 설정하는법
chap설정방법

유저네임 상대방호스트
int se 0/0/0
인캡슐 ppp
ppp 어센케이션 chap(ppp)
ip add ip 서브넷
no sh

ppps는
ppp pap sent-username 자신의 유저네임 패스워드

 

 

 

 


---------------------------------------------------
765 데이터
세그먼트 4계층
페킷 3계층
프레임 2계층

preamble - 신호의 동기화
0의 간격 1의 간격

type - 다음헤더의 프로토콜을 지칭

ip헤더의 프로토콜이 지칭하는 건
다음 헤더 or 다음에 올 헤더
2계층의 type

ip 헤더의 time to live - 홉리미트 값 255
라우터 넘을때마다 -1 씩 해서 0 이 되면 버린다
메세지의 수명 255
--------------------------------------------------
tcp
신뢰도가 높다
3way-hand
재전송

흐름제어 - 전송양 속도를 제어
tcp가 흐름제어를 하는게 아니고 제어가 되는거다
윈도우윙과 ack에 의해서 흐름제어가 되는거
ack를 못받으면 파일이 못간다
한번에 많은양을 보내기 위해서 윈도우윙

윈도우 사이즈 (윙)

속도가 느리다
------------------------------------------------------
udp
빠르다

포트
tcp udp 따로 있는거아님 설계자마음 tcp특성 udp특성

클래스
A-0~127
B-128~191
C-192~223
B-224~255

사설IP
10.0.0.0 ~ 255
127.0.0.0 ~ 255
172.16 ~ 31
192.168.0.0 ~255
--------------------------------------------------------
VLSL팅
0/25 1~50 67쓰고있으면 안됨
64/26

둘다매치했을때는 서브넷마스크 더 매치하는 네트워크에 보낸다
/25
/26
있으면 26비트 매치하는 곳으로 보낸다
롱디스크 프리픽스 법칙
---------------------------------------------------------
슈퍼넷팅
라우팅테이블 줄이기 위해서
서브넷팅한걸 다시 합치는

192.168.1.0 /24
192.1.19.0 /24

192.0.0.0 /24
이렇게도 묶을 순 있다 잘못된거 광범위하고 비효율적

192.168.1.0/26
192.168.1.64/26
192.168.1.192/26
위의 세개를
192.168.1.0/24 이렇게 묶을 수 있다
위의 3개의 아이피는
192.168.1.0 ~ 192.168.1.255안에 속 한다

172.16.168.0/24
172.16.168.0 ~ 175.16.172.0
168부터 175까지를 이진수로 풀면
1010 1001
1010 1010
1010 1011
1010 1100 등등 나온다
1010 1까지는 같아서 여기까지 묶는다
172.16.168.0/21 로 슈퍼넷팅할수 있다
그러면 168부터 3비트로 표현 할수 있는 수는
8개이기때문에
168 ~ 175 까지 딱 나온다
---------------------------------------------------------
start-config nv램
runing-config 현재
copy ruing-config tftp

ftp-tcp베이스
tftp-udp베이스
--------------------------------------------------------
패스워드 설정
line con 0
password cisco
login

line vty 0 4
password cisco
login

enable password cisco
-----------------------------------------------------
브리프
다운-다운 - 케이블 뽑힌거
admin다운 - 관리자가 안키거
업-다운 - 약속이 안 지켜진거
-----------------------------------------------------
라우팅
스태틱-자기가 모르는 네트워크를 치는거
ip route 목적지아이피대역, 서브넷, next-h(2계층의목적지)

라우팅방법
distance vector방식 - rip, igrp-> eigrp
-eigrp는 하이브리드라고한다
링크스테이스터스 랑 디스탠드백터 방식을 섞어서 만듬
link state방식 - ospf

rip특징
메트릭-h(홉)카운트
멕시멈홉카운트-15(16부터는 통신이안됨)
업데이트 주기-30초

명령어
no auto 섬머리
서브넷팅지원 - 노오토섬머리 버전2

ospf
에어리어단위설정
에어리어 에어리어 사이를 abr (에어리어 보더라우터)
에어리어 에어리어 사이에 있는 라우터(abr)

인접성
헬로우, 데드타임, 에어리어id

물리적은 실재로 존재하는데
가상은 물리적으로 존재하지 않지만 물리적인거랑 같은거

dr선출
dr은 이더넷에서 선출된다
시리얼에선 선출안된다

이더넷에서 같은 네트워크에서 반장을 뽑는거

높으면 반장
프리올리티-id-

관리자에의해 설정된거(직접id설정)
루프백인터페이스중에 가장 높은 아이피를 쓰는데
없으면 물리인터페이스중에 가장 높은 아이피를 쓴다


eigrp
인접성조건
-as넘버(eigrp 1 eigrp 2 이런거)
-k밸류

쿼리리플라이 잘못 설계하면 장애 유발
np때 다시 한다

eigrp는 광고할때 와일드마스크인데
와일드마스크 안써도되고 써도 된다
0.0.0.0 입력하면 다 광고되요 ? 이건 아니다
클래스 기준으로 광고해준다 클래스 안에 포함되면
-----------------------------------------------------------
스위치
스위치는 콜리젼도메인을 나눈다(충돌영역)
스위치포트 갯수를 보면 콜리젼도메인 갯수를 알 수 있다
스위치는 48비트 16진수

브로드캐스트-같은 네트워크 안에서 브로드캐스트데이터를 플루딩한다

arp-목적지 맥을 몰라서 플루딩하는거(ip알고 mac모를때)

스위치가 목적지어드레스 ffffff를 플루딩하는 이유
-스위치가 모르는 주소가 목적지가 되있을때
-맥어드레스 테이블에 주소가 없을때
맥어드레스에도 맨앞에 맨끝에 주소는 못쓰게 해뒀다
그래서 제일 마지막 꺼는 브로드 캐스트 주소다 라고 얘기하는거
맥어드레서주소 0000.0000.0000 랑 ffff.ffff.ffff 안 쓴다

preamble - 신호의 동기화
1이먼지 2가 먼지


000000-000000 (4x6 + 4x6)
2진수 4비트로 0~15까지 16개 표현할수 있어서
16진수 1자리에 4비트다
0000.0000.0000(실제표기)
제조회사번호 - 제품번호
24비트-24비트

스위치동작방식
스위치는 같은 멤버끼리 통신한다
스위치는 모르는 주소는 뿌린다(플루딩)
스위치는 들어오는 데이터에 소스어드레스를 맥테이블에 학습하고
포트까지 매칭시켜놔야된다(테이블에 포트까지 적어 놓는다)
스위치는 목적지 맥어드레스를 맥테이블에서 찾아서 전송한다

 


스팰링트리 2계층 프로토콜
2계층 낮은거니까 낮은걸 뽑고

스팰링트리 선출과정

vlan
트렁크 - 공용회선
트렁크를 쓸수 있는 근거 태그
태그는 트렁크가 한다(트렁크의 역할)

vlan 1 은 원래있었던 애들인데
네이티브 브이랜은 원래있던 애들은 태그 안하는거
이거 바꿀수도있는데 바꾸면 장애난다
바꿀려면 전체스위치 다 바꿔줘야된다

vtp 프로토콜
vlan 자동화를 하기 위해 필요한 프로토콜
트렁크 환경에서만 작동한다
트래이페어런트는 왕따
vtp mode server
vtp domain nkjok

나트할떄 0.0.0.0 0.0.0.0
외부가는 라우터로보내라
외부라우터는 외부로 보내라
라우팅은 모르면 못간다
라우터가 6개면 6개 다해줘야된다

외부망이랑 내부망의 라우터는 라우팅하지않는다
스태틱으로 외부로 모르면 보내라라는 라우팅만 해준다
show run에 안나오면 다이쟈블 오토는 뜬다
show int 스위치포트 해도 다이쟈블인지 오톤지 알수있다

스위치의 포트번호
포트번호는 root포트 정할때 코스트값(19) 동일하면
포트번호가 낮은게 RP 루뜨 포트가 된다

sp vl 1~10 프리올리티
-------------------------------------------------
ipv6는 128비트 서브넷팅 필요없다
/4 4비트가지고 대륙을 표시
0001 아시아
그다음 비트로 국가를 알수 있다

 

0.0.0.0 0.0.0.0 은 마지막에 매치하고 보낸다

 

mdf 판낼(패치판낼이라고도함) utp케이블 연결해주는 거

 

view
show hide interface labels 클릭해주면
포트보임

반응형

[리눅스공통] tar 사용법 (gz, bz2, xz)

Posted by nkjok
2019. 4. 5. 11:50 OS&기타/Linux
반응형

샘플 : [root@localhost /]# tar cvfz 123.tar.gz /bin /var
tar cvfz 파일이름.tar.gz /압축경로 /압축경로
= /bin + /var 압축한 123.tar.gz 생성

 

샘플 : [root@localhost /]# tar xvfz 123.tar.gz -C /test
tar xvfz /경로/압축파일.tar.gz -C /원하는위치
= 특정경로에 풀기

 

형식 : gzip

gzip은 파일 압축에 쓰이는 응용 소프트웨어이다. gzip은 GNU zip의 준말이며, 초기 유닉스 시스템에 쓰이던 압축 프로그램을 대체하기 위한 자유 소프트웨어이다. gzip은 Jean-loup Gailly와 마크 애들러가 만들었다. 버전 0.1은 1992년 10월 31일에 처음 공개되었으며, 버전 1.0이 1993년 2월에 뒤따라 나왔다. 오픈BSD의 gzip 버전은 더 오래된 압축 프로그램을 기반으로 하고 있으며, 오픈BSD 3.4에 추가되었다.

묶기 : [root@localhost /]# tar cvfz 123.tar.gz /bin

풀기 : [root@localhost /]# tar xvfz 123.tar.gz

 

 

형식 : bzip2

bzip2는 버로우즈-휠러 변환 기반의 압축 알고리즘 및 압축 소프트웨어이다. 줄리안 시워드(Julian Seward)가 개발하였으며, 1996년 7월에 0.15 버전을 처음 공개했다. 소프트웨어는 오픈 소스이며, BSD 허가서와 비슷한 라이선스를 갖는다.

묶기 : [root@localhost /]# tar cvfj 123.tar.bz2 /bin

풀기 : [root@localhost /]# tar xvf 123.tar.bz2

 

 

형식 : xz

xz는 무손실 데이터 압축 프로그램 및 LZMA2 압축 알고리즘 파일 형식이다.

묶기 : [root@localhost /]# tar cvfJ 123.tar.xz /bin

풀기 : [root@localhost /]# tar xvfJ 123.tar.xz

반응형

[CentOS-6.X] 리눅스를 NTP 서버로 만들기 (시간동기화 서버)

Posted by nkjok
2019. 4. 5. 10:32 OS&기타/Linux
반응형

1. 설치한다.

[root@localhost ~]# yum -y install ntp

 

2. 설정을 수정한다

[root@localhost ~]# vi /etc/ntp.conf

# Hosts on local network are less restricted.
#restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap (NTP 행위를 허용할 IP 범위 설정)
restrict 192.168.3.0 mask 255.255.255.0 nomodify notrap

# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
server 127.127.1.0 #local clock

vi에디터로 ntp.conf를 열어서 IP 범위를 지정하고 Server 리스트를 주석(#) 처리한다.

 

3. 서비스를 시작한다.

[root@localhost ~]# service start ntpd

 

4. 서비스를 부팅 시 자동으로 시작하게 설정한다.

[root@localhost ~]# chkconfig ntpd on 

 

이제 시간을 동기화할 컴퓨터에 이 리눅스의 IP를 NTP서버로 지정해주면 된다.

 

끝 !

 

 

 

참고용. 

[root@localhost ~]# chkconfig --list ntpd
ntpd 0:해제 1:해제 2:활성 3:활성 4:활성 5:활성 6:해제 (init로 부팅됬을때 자동 활성화 여부)

반응형