STP : 루트스위치 선출을 위해 & loop방지를 위해 동작


RSTP : STP의 단점을 보완,  
                    >  alternated port 에서 forwarding으로 변경시  지연시간이 긴것을 줄이기 위해 나온 STP



PSTP : Per STP

Vlan마다 STP를 작동 Vlan 이 10개면 STP10개 계산
장점 : Vlan별로 로드벨런싱이 가능하다
단점 : 부하가 많이 걸릴 수 있다. 


CSTP : Common STP
Vlan이 몇개든지 STP를 하나만 계산
단점 : Vlan이 여러개 이더라도 로드벨런싱 못함



MSTP : Multiple STP
여러개의 Vlan을 묶어서 STP를 여러개 만듦(instance)
Vlan100개 vlan 1~ vlan 50 STP( instance 1)
vlan 51~ vlan 100 STP( instance 2)
AND

STP : Spanning-tree protocol     <루트스위치 선출을 위해 동작 : 루프방지 >
CDP : Cisco discovery protocol < 시스코 장비에서만 작동, 이웃 장비정보파악가능>


다중 Vlan환경에서 포트관련 프로토콜

DTP : Dynamc trunk protocol ( IEEE 802.1q, Cisco ISL)          
<한쪽포트가 트렁크 포트가 되었을 때 다른한쪽포트도 자동으로 trunk포트되기 위해 동작>
# int fa0/1
# switchport mode trunk         라고 입력시 반대 편 포트도 자동으로 DTP때문에 trunk port로 동작
 
VTP : vlan trunking protocol
<다중 vlan환경에서 vlan정보를 자동으로 전달하는 프로토콜>
# show vlan-switch


HSRP : Hot standby router protocol
<스위치 이중화시에 한쪽 스위치가 다운되면 다른 한쪽이 동작하기 위해 active, standby 모드로 나뉘어 동작>
 # show vtp status
AND

프래임 릴레이
 물리적인 선은 하나지만 WAN환경에서 가상회선을 사용해서 여러개의 지사를 연결해주는방식
프래임의 단위(길이를) 길게또는 일정하게 해준게 ATM


----------------------------------
장비에서 L2레이어 인캡슐레이션타입 확인하기
Router#show int s0/0/0
((# show interface 하면 각 인터페이스 별로 다나온다.))
Serial0/0/0 is administratively down, line protocol is down (disabled)
  Hardware is HD64570
  MTU 1500 bytes, BW 1544 Kbit, DLY 20000 usec,
     reliability 255/255, txload 1/255, rxload 1/255
  Encapsulation HDLC, loopback not set, keepalive set (10 sec)
  Last input never, output never, output hang never
---------------------------------
장비에서 인캡슐레이션타입 바꾸기
Router(config)#int s0/0/0
Router(config-if)#en
Router(config-if)#encapsulation
Router(config-if)#encapsulation ?
  frame-relay  Frame Relay networks
  hdlc         Serial HDLC synchronous
  ppp          Point-to-Point protocol
__________________________________
시리얼 통신은 DCE에 해당 인터페이스에서 clock rate를 주어야 한다.
---------------------------------
그림처럼 L2 인캡슐레이션을 바꾸는 예제 해보기
PPP, HDLC방식

Router#sh interface s0/0/0
Serial0/0/0 is up, line protocol is down (disabled)
  Hardware is HD64570
  MTU 1500 bytes, BW 1544 Kbit, DLY 20000 usec,
     reliability 255/255, txload 1/255, rxload 1/255
  Encapsulation PPP, loopback not set, keepalive set (10 sec) //10초에 한번씩 살았는지보내기
  LCP Closed       //  연결 닫혔다
  Closed: LEXCP, BRIDGECP, IPCP, CCP, CDPCP, LLC2, BACP  // ppp방식은 2개로 구성된다(lcp, ncp)
  Last input never, output never, output hang never
  Last clearing of "show interface" counters never
  Input queue: 0/75/0 (size/max/drops); Total output drops: 0
  Queueing strategy: weighted fair
  Output queue: 0/1000/64/0 (size/max total/threshold/drops)
     Conversations  0/0/256 (active/max active/max total)
     Reserved Conversations 0/0 (allocated/max allocated)
     Available Bandwidth 1158 kilobits/sec
  5 minute input rate 0 bits/sec, 0 packets/sec
  5 minute output rate 0 bits/sec, 0 packets/sec
     0 packets input, 0 bytes, 0 no buffer
     Received 0 broadcasts, 0 runts, 0 giants, 0 throttles
     0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort
     0 packets output, 0 bytes, 0 underruns
     0 output errors, 0 collisions, 0 interface resets
     0 output buffer failures, 0 output buffers swapped out
     0 carrier transitions
     DCD=up  DSR=up  DTR=up  RTS=up  CTS=up
 
---------------------
NCP, LCP
LCP
 Link Control Protocol
 인증,
  pap
   두번대화 (왔다갔다, 둘밖에 연결되어 있지 않지만 암호가 그냥 드러난다.)
  chap
   세번대화(좀더 보안적)
 압축,
 에러정정,
 다중링크ㅇ

DLCP 200
=--------------------------
인캡슐레이션 타입 바꿔보기
ppp는 인증을 설정해야 한다.
 R3에서
 1. 인터페이스를 다운시키거나, 케이블을 다 끊고 시작한다
 2. 사용자 유저 만들기(hostname은 장비이름(R3), username은 사용자 이름(R4- 연결할 장비의 호스트이름))
 3. 해당 인터페이스 들어가서 (serial 0/0/0)
 4. ip주고 dce에서는 clock ratte 설정하고 인캡슐레이션 타입을 PPP로 바꾼다.
 5. 반대쪽에 들어가서도 동일한 작업을 한다.
 6. 확인   show int s0/0/0 에서 up up

frame-relay 는 인증 과정이 없다. 
 (유저 입장에서 셋팅과정)
 1. 구름의 s0  s1모두 DCE이다.
 2. 인터페이스를 다운시키거나, 케이블을 다 끊고 시작한다
 3. 장비 이름만(hostname은 장비이름(R5)) 설정한다
 4. 해당 인터페이스 들어가서 (serial 0/0/0)
 5. ip주고 인캡슐레이션 타입을 frame-relay로 바꾼다.  유저이므로 DCE셋팅은 안한다
 6. 반대쪽 R6에 들어가서도 동일한 작업을 한다.
 7. 확인 show int s0/0/0에서 up up
 
 (구름입장에서 )
 1. 인터페이스에 들어가서 DLCI번호 와 연결된 라우터의이름 을 설정하고
 2. R5의 serial 0 이 R6의 serial1을 맵핑시켜준다

 반드시 프래임 릴레이 환경에서는 다음의 map을 확인해라!!!!
  # show frame-relay map
 
 R5
 do show frame-relay map
 Serial0/0/0 (up): ip 192.168.8.2 dlci 100, dynamic, broadcast, CISCO, status defined, active
  ;; 192.168.8.2로 나가라, dlci 셋팅 dynamic , boradcast(기본은 브로드케스트가아니다), 현재 active상태이다
  
 
 상태확인하기
 show frame-relay ?
 show frame-relay lmi
  가입자와 frame-relay 스위치 사이에 lmi- type알기,
 show frame-relay pvc 
  현재 DTE 인지 또는 오가는패킷의 양에의해 혼잡해질때, 확인도 가능하고 정책도걸어 덜 중요한 패킷은 차단할 수도 있다.
 
-----------위의 프래임릴레이는 자동으로 하는거, 실무에서는 inverse-arp를 끄고 수동으로 한다.(잘못된정보를 막기위해)
Inverse-arp를 통해서 DLCI번호를 헤더에 넣고 map정보를 전달한다.
ISP업체에 연결된 라우터에서
 1. ISP와 연결된 인터페이스에서
 2. 인캡슐레이션 바꾸기
 3. LMI타입을 바꾸기(cisco)
 4. DLCI 번호 설정하기
 5. map설정하기( 어떤 ip로 가려면 DLCI번호 맵핑)
 R5
 conf t
 int s0/0/0
 encapsulation frame-relay
 frame-relay lmi-type cisco
 frame-relay interface-dlci 100
 frame-relay map ip 192.168.1.10 200 bloadcast
 end
 R6
 conf t
 int s0/0/0
 encapsulation frame-relay
 frame-relay lmi-type cisco
 frame-relay interface-dlci 200
 frame-relay map ip 192.168.1.9 100 bloadcast
 end
------------------
현재토폴로지에서 R7추가
 R6와 R7은 point -to -point 이고 R5는 muilt point이다. 그래서 실제장비에서는 이부분도
 지정을 해줘야 한다.
 이 상태( hub-spoken) 에서는 R6  -> R7으로의 ping은 안간다. 왜냐하면 같은 네트워크이고
 R5까지 갔다가 같은 포트로 다시나와야되는데 이는 split horizen정책에 어긋난다.
 같은 네트워크에서는 한포트로 입출력 불가능  --> split horizen
 다른 네트워크로는 한포트로 입출력 가능  
--------------
point to point 는 라인하나에 dlci번호가 하나 이므로 map 옵션명령어가 필요없다.
muiltpoint는 라인하나에 dlci번호가 여러개
이전꺼는 하나의 네트워크
이번엔 각각 다른 네트워크 구성

 R5에서
기존 정보지우고
 conf tint s0/0/0
 no ip address
 no encapsulation frame-relay
 no shut

새로 정보넣기
 conf t
 int s0/0/0
 encapsulation frame-relay
 exit 
 int s0/0/0.1 ?
 int s0/0/0.1 muiltpoint
 
 frame-relay interface-dlci 100
 frame-relay interface-dlci 300
 frame-relay map ip 192.168.1.10 100 broadcast   = R6
 frame-relay map ip 192.168.1.11 300 broadcast = R7
 ip address 192.168.1.9 255.255.255.248
 exit
  
 int s0/0/0.2 point-to-point
 frame-relay interface-dlci 500
 ip address 192.168.1.25 255.255.255.248        //프레임 map 명령어 필요없음
 end
 
============= 다이나밉스에서
R1
 conf t
 interface serial 1/0
 encapsulation frame-relay
 frame-relay interface-dlci 103
 frame-relay map ip 2.2.2.123.3 203 broadcast
 ip address 2.2.123.1 255.255.255.0
 no shut
 end
 interface loopback 0
 ip address 2.2.1.1 255.255.255.0
 
R2
 conf t
 interface serial 1/0
 encapsulation frame-relay
 frame-relay interface-dlci 203
 frame-relay map ip 2.2.2.123.3 203 broadcast
 ip address 2.2.123.2 255.255.255.0
 no shut
 end
 interface loopback 0
 ip address 2.2.2.2 255.255.255.0
R3
 conf t
 hostname R3
 interface se1/0   //서브인터페이스니까 부모한테들어와서 선언하고
 encapsulation frame-relay
 no shut
 exit
 
 int se1/0.123 multipoint        ///자식으로 들어간다
 ip address 2.2.123.3 255.255.255.0
 frame-relay interface-dlci 301
 frame-relay interface-dlci 301
 
 frame-relay map ip 2.2.2.123.1 301 broadcast
 frame-relay map ip 2.2.2.123.2 302 broadcast 
 
 ip address 2.2.123.2 255.255.255.0
 no shut
 
 int s1/0.34 multipoint 
 ip address 2.2.34.2 255.255.255.0
 frame-relay interface-dlci 304
 frame-relay map ip 2.2.34.4 304 broadcast
 no shut
 end
 
 show ip int brief
 
 end
 interface loopback 0
 ip address 2.2.2.2 255.255.255.0
R4
 conf t
 int s1/0
 encapsulation frame-relay
 no shut
 exit
 int s1/0.24 mulitipoint
 frame-relay  interface-dlci '번호'
 exit
 frame-relay map ip 'targetIP' '번호' broadcast
 no shut
 
 루프백설정
-------------
EIGRP작동
R1~ R4
 show ip route
 conf t 
 router eigrp 1
 network 2.0.0.0
 end
 
 show ip eigrp neighbor
 show ip eigrp
 show ip eigrp topology        에서 가장 좋은 정보가
 show ip route    에 올라간다.
 show ip protocols  라우팅프로토콜 속성값 보기
 

--------------
인증설정
 eigrp 인증은 =rip인증
 
 먼저 password만들어줌( cisco 는 key-chain 라는 주머니에 password를 만든다 )
 interface에서 인증한다.( interface는 만든것을 불러오는 방식이다)
  
 인증방식 은 2가지(clear text /md5)
 clear text방식은 다 보인다
 
 1. key-chain 으로 pw생성
 2. 인증방식 설정 authenation mode
 3. key-chain 을 불러와서 인증하시오.
 R1에서
 conf t
 key chain EIGRP_KEY //이름은 다른라우터에서 설정과같지 않아도 상관없다
 key 10       ///////  key ID   다른 라우터에서 같게한다
 key-string bitec
 exit
 exit
 ip authentication mode eigrp  1 md5
 ip authentication key-chain eigrp 1 EIGRP_KEY
 R3에서
 conf t
 key chain EIGRP_KEY
 key 10
 keystring bitec
 exit
 exit
 int s1/0.123
 ip authentication mode eigrp 1 md5
 ip authentication key-chain eigrp 1 EIGRP_KEY

 
dynagen에서
 export /all "frame-relay" 하면 환경설정파일이 work/frame-relay 디렉토리에 생성된다

AND


1. 필요한 프로그램 설치
 1) dynagen 설치(dynamips server, dynagen)
 2) wireshark
 3) 터미널(secreCRT, xshell)

dynamips server로 라우터를 메모리에 올리고
장비연결이 저장된 .net파일을 dynagen으로 이용해서
실행한다.
실습시 항상 dynamips server를 켜있어야만 한다.


2. 가상의 라우터가 작동하기 위해서는 실제 이미지가 필요하다
사용할 이미지 파일을 둘 폴더를 생성하자,
 C:\dynamips\images\
 그리고 사용할 이미지 파일 복사하기

3. 가상라우터에 사용할 파일이 있을 폴더를 생성하자
 C:\dynamips\work\hsrp

4. .net파일을 생성 : 사용할 장비를 연결함
  c:\dynamips\work\hsrp\hsrp.net
5. dynamips server 작동, 작성한 .net파일을 dynagen으로 실행
  바탕화면에 있는 dynamips server를 실행한다 (닫지말것

6. dynagen으로 장비확인 후 장비 부팅
  hsrp.net 파일을 dg-local.com로 실행한다(dynagen)
  dynagen에서..
  =>_       //바로 실행되었음. 에러발생시 처리바람
  => ?
  => list
  => start ISP
  => start r1
  => start r2
  => start sw
  => list
  => idlepc get ISP
  => idlepc save ISP //net에  저장
  => idlepc copy ISP /all //ISP의 idlepc 값을 타장비에게 복사

7. 각 장비의 콘솔터미널로 접속하여 각 장비 설정하기
  => telnet ISP    //ISP 장비에 대해서 설정하기
  또는 별도의 터미널 창을 이용하여 장비에 콘솔접근을 한다.
  7-1) 기본설정 : 장비이름, 도메인서비스 끄기, telnet/enable설정
  7-2) interface 설정

8. 저장하기 (startup-config 를 백업하기)

9. 패킷 캡쳐하기.


7-2)
dynagen=> telnet ISP
!ISP 라우터 설정-------------------------------
enable
conf t

enable secret bitec
no ip domain-lookup

line con 0
logging syn
exec-timeout 0
exit
line vty 0 4
password cisco
login
exit

hostname ISP
interface serial 1/0
 ip address 192.168.1.1 255.255.255.252
 no shutdown
 exit
interface serial 1/1
 ip address 192.168.1.5 255.255.255.252
 no shutdown
 exit
interface loopback 0
 ip address 10.10.10.10 255.255.255.255
 no shutdown
end


dynagen=> telnet r1
!r1 라우터 설정-------------------------------
enable
conf t

enable secret bitec
no ip domain-lookup

line con 0
logging syn
exec-timeout 0
exit
line vty 0 4
 password bitec
 login
exit

hostname R1
interface serial 1/0
 ip address 192.168.1.2 255.255.255.252
 no shutdown
 exit
interface fastethernet fa0/0
 ip address 192.168.119.2 255.255.255.0
 no shutdown
end

dynagen=> telnet r2
!r2 라우터 설정-------------------------------
enable
conf t

enable secret bitec
no ip domain-lookup

line con 0
logging syn
 exec-timeout 0
 exit
line vty 0 4
 password bitec
 login
exit

hostname R2
interface serial 1/0
 ip address 192.168.1.6 255.255.255.252
 no shutdown
 exit
interface fastethernet fa0/0
 ip address 192.168.119.3 255.255.255.0
 no shutdown
end

dynagen=> telnet sw
!sw 라우터 설정-------------------------------
enable
conf t

enable secret bitec
no ip domain-lookup

line con 0
logging syn
exec-timeout 0
exit
line vty 0 4
 password bitec
 login
exit

hostname SW
interface range fa1/1 - 2
 no shutdown
 exit
interface vlan 1
 ip address 192.168.119.10 255.255.255.0
 no shutdown
end

확인 show running-config
 show ip int brief
 동일 network 내에서 pint test




 

<hsrp.net파일설정>



 

#파일형식은 모든파일로

autostart = false

#메모리효율적사용을 위해 아래 두줄
ghostios = ture
sparsemem = true

model = 3660


#로컬호스트 = 서버
[localhost]
workingdir = C:\dynagen\work\hsrp

[[3660]]
 image =c:\dynagen\images\c3660-jk9o3s-mz.123-26.image.BIN
 ram = 96
 #fa0/0, fa0/1  은 default
 #serial interface -- > NM-4T
 #ethernet(switching) -> NM-16ESW
#토폴로지구성
#로컬호스트가 한개이므로 포트번호를 다르게 하면 접속가능 
[[router ISP]]
 console = 3001
 #시리얼 추가
 slot 1 = NM-4T 
 # 시리얼선 양쪽중 한번만 써주면된다.            
 s1/0 = r1 s1/0
 s1/1 = r2 s1/0

 

[[router r1]]
 console = 3002
 slot 1 = NM-4T
 fa0/0 = sw fa1/1

[[router r2]]
 console = 3003
 slot 1 = NM-4T
 fa0/0  = sw fa1/2

[[router sw]]
 console = 3004
 slot 1  = NM-16ESW


# list
# start 라우터이름
# 이걸로 라우터 전부 키고


# idlepc get ISP 로 제일 적은 숫자 선택하면 start ISP했을때 경고 뜨지 않고 CPU적게 쓴다
# 그래도 많이 먹으면 유틸사용
# idlepc save ISP
# idlepc
# telnet ISP로 들어간다   프로그램 사용

# conf t
# no ip domain-lookup
# line console 0
 # 로그 발생시 자동개행
 # logging synchronous
 # 일정시간 무반응시 자동종료 실무에선 하지말기 
 # exec-timeout 0 0
 # exit
# line vty 0 4
 # passwd cisco
 # login
 # end
#스위치에서
 # do show ip int brief확인
 #  net 설정에서 스위치 어디에 연결되어있는지 확인해서
 # 해당 인터페이스 들어가서 no shut해준다
 # sh vlan-switch           명령어가 좀 다르다
 # int vlan 1
  # ip address 192.168.119.10 255.255.255.0
  # no shutdown
 # sh running-config
 # sh int vlan 1


ISP 라우터 설정-------------------------------
enable
conf t

enable secret bitec
no ip domain-lookup

line con 0
logging syn
exec-timeout 0
exit
line vty 0 4
password cisco
login
exit

hostname ISP
interface serial 1/0
 ip address 192.168.1.1 255.255.255.252
 no shutdown
 exit
interface serial 1/1
 ip address 192.168.1.5 255.255.255.252
 no shutdown
 exit

end


!r1 라우터 설정-------------------------------
enable
conf t

enable secret bitec
no ip domain-lookup

line con 0
logging syn
exec-timeout 0
exit
line vty 0 4
 password bitec
 login
exit

hostname R1
interface serial 1/0
 ip address 192.168.1.2 255.255.255.252
 no shutdown
 exit
interface fastethernet fa0/0
 ip address 192.168.119.2 255.255.255.0
 no shutdown
end

dynagen=> telnet r2
!r2 라우터 설정-------------------------------
enable
conf t

enable secret bitec
no ip domain-lookup

line con 0
logging syn
 exec-timeout 0
 exit
line vty 0 4
 password bitec
 login
exit

hostname R2
interface serial 1/0
 ip address 192.168.1.6 255.255.255.252
 no shutdown
 exit
interface fastethernet fa0/0
 ip address 192.168.119.3 255.255.255.0
 no shutdown
end

!sw 라우터 설정-------------------------------
enable
conf t

enable secret bitec
no ip domain-lookup

line con 0
logging syn
exec-timeout 0
exit
line vty 0 4
 password bitec
 login
exit

hostname SW
interface range fa1/1 - 2
 no shutdown
 exit
interface vlan 1
 ip address 192.168.119.10 255.255.255.0
 no shutdown
end

확인 show running-config
 show ip int brief
 동일 network 내에서 pint test

 

ISP에서 가상인터페이스 추가하기

# interface loopback 0
# ip address 10.10.10.10 255.255.255.255
# no shutdown


각 라우터마다 아래 명령어로 rip설정
# router rip                      //rip는 네트워크주소만 파악하기 때문에
 network 네트워크주소

   // network 192.168.1.0
   // network 192.168.4.0
   // network 10.10.10.10
    // 이렇게 해줄 필요없다

 network 192.168.1.0 //192.168.1.0, 192.168.4.0에 대한 C클래스 주소
 network 10.0.0.0  //10.10.10.10 에 대한 A클래스 네트워크 주소
 
 
end
show ip connected


다음으로 스위치에서 설정
#ip route 0.0.0.0 0.0.0.0 192.168.119.2

 

스위치가 ping을 전달하기 위해서는 ip주소에 대해 전달해줄 출구를 지정해 줘야한다.

l2스위치는 ip default gateway주소
l3스위치는 conf t
 ip route 0.0.0.0 0.0.0.0 gateway주소


***** 장비 이중화
토폴로지에서 보듯이 장비 이중화를 하려면 R1, R2에 똑같은 공통의 가상 ip를 주어서
이하 pc들에게 하나의 라우터로 인식시키고
한쪽이 장애가 발생해도 다른한쪽이 여전히 동작함으로 pc들의 통신에는 영향을 받지 않게 한다.


***
debug확인
debug ip detail
debug all


show standby brief          ///요거요거 확인하는 명령어

 


장비이중화 과정은 두 라우터에서 설정하고
이하 패킷이 올라오는 스위치 부분에서는 디폴트 게이트웨이를 설정한 가상 ip주소를 절정해야한다.

standby [그룹넘버] ip [가상ip주소]

standby 1 ip 192.168.119.1 를 양쪽에 스위치 연결 포트에 해주기

스위치 가서
디폴트게이트웨이 삭제하고 새로운 가상ip주소 192.168.119.1 추가
 
standby과정설정하면서 debug걸어놓고 하면 변화상태를 확인할 수 있다.
확인 명령어 show standby brief


r1에 들어가서 스위치와의 연결포트를 셧다운 시키고 어떻게 동작하는지 확인

 

 

 

preempt    자기보다 높은 우선순위값의 hello 패킷이 오면 speak상태가 되어서 둘다 speak상태가되면
게이트가 없어지는 현상이 일어난다.

방지책으로
암호를 md5 형태로 바꾼다.
아니면 토폴로지상에서 두대의 스위치만 연결가능한 선을 연결해준다.
hello패킷은 멀티케스트 주소로 전송되므로 pc로 연결되는 포트정책을 blk걸어줘도 된다.

 


** track 걸기

현재 r1이 active 인상태이다.
이전에는 r1과 sw사이가 문제가 있을때의 경우였지만
이제 r1과 isp사이의 문제가 있을때는
통신이 되긴된다.
 sw  --> r1  다시 --->sw  -->  r2   ---> isp로
그래서 이렇게 하지말고
r1의 우선순위를 낮추어 r2가 active가 되게 하면 r1까지 왔다가 돌아가는 경우가 발생하지 않고
바로 r2로 간다.

 


***
arp 테이블을 확인하면 이중화를 위한 가상 주소에 해당하는 mac주소 끝부분이 group ID 를 알려주므로
이를 막기위해 standby에  옵션에서 조절할 수 있다.

int fa0/0 standby 10 track s1/0 20 //interface 시리얼 1/0을 감시하다가 interface에 변화가
생기면 hsrp group 10의 priority 값을 20 감소하라

====================
# sh ip protocol
Routing Protocol is "rip"
  Sending updates every 30 seconds, next due in 26 seconds      //30 초마다 한번씩
  Invalid after 180 seconds, hold down 180, flushed after 240   //180초지나면 다운, 240초지나면지움
  Outgoing update filter list for all interfaces is not set
  Incoming update filter list for all interfaces is not set
  Redistributing: rip               //rip 만 이해가능
  Default version control: send version 1, receive any version   //보내는건 v1받는 건 아무거나
    Interface             Send  Recv  Triggered RIP  Key-chain
    Serial1/0             1     1 2                                 
    Serial1/1             1     1 2                                 
  Automatic network summarization is in effect     /// 클래스풀하게 전파한다.주변이 서브넷되어있어도 .

  Maximum path: 4
  Routing for Networks:
    10.0.0.0
    192.168.1.0
  Routing Information Sources:
    Gateway         Distance      Last Update
    192.168.1.2          120      00:00:22
    192.168.1.6          120      00:28:50
  Distance: (default is 120)            //변경가능


>>>>>>>>>>>RIP는 서브넷이나 VLAN환경에서 사용 불가


Rip versino 2에서는
클래스레스하게 사용가능한대
이때 각 라우터별로 ver2 를 설정하고
router rip
version 2
no auto-summary 를 해줘야한다
===================

quiz
 1. rip v2에서 ISP와 r1이 멀티, 브로트케스트가 막혔을때 유니키스트로처리한다
  255.255.255.255  == rip v1
  224.0.0.9  == rip v2
 
  r1에서 passive-interface s1/0
   neighbor 192.168.1.1
  ISP에서 passive-interface s1/0
   neighbor 192.168.1.2
  
  passive-interface는 해당인터페이스로 장비정보를 주고 받지 않는다
  neighbor 키워드로 네이버 장비를 직접 지정해 줌으로 써 unicast로 주고받는다.
 
 
 2. rip version 2에서 R2와 ISP broadcast(255.255.255.255)로 network정보를 주고 받게 하자
  conf t
  int s1/0
   ip rip v2-broadcast
 
 3. ISP - > R1으로 네트워크 정보를 전달할때 변경된 정보만 전달하자
  -->> 이더넷은 안된다.
   HDLC, PPP만 허용
  

 트리거 업데이트 ;;변경된 정보를 바로 옆으로 반영한다.
  cnnf t
  int s1/0
  ip rip triggered
  en   d
  
  ISP에서 loopback 0을 shutdown한후, R1에서 라우팅 테이블을 확인
  


 4. R1의 라우팅 테이블의 메트릭 값을 변경하여라 .
  ==>> ISP R에서 R1으로 내보낼때 , 설정을 5로 변경하자.
  
  conf t
  int loopback 1
  ip address 172.16.8.1 255.255.255.0
  exit
  int loopback 2
  ip address 172.16.9.1 255.255.255.0
  exit
  int loopback 3
  ip address 172.16.10.1 255.255.255.0ㅁㄴ
  exit
  int loopback 4
  ip address 172.16.11.1 255.255.255.0
  exit 

 

access list는 IPhead의 소스와 목적지 주소를 정책건다

 5, 위의 172,16.8.1 ~11.1/24 을 합치기
  172.16.8.0/22 이다.
  
   서브네팅해서 네트워크를 4개로 나누려면 host비트를 2비트를 써야하므로
  서브네팅되어있다고 생각하고 하나의 네트워크로 합치면 2비트를 늘여서 /22가 된다
  
  ISP에서
  
  conf t
  int s 1/0
  ip summary-address rip 172.16.8.0 255.255.252.0
  exit
  int s 1/1
  ip summary-address rip 172.16.8.0 255.255.252.0
 
  토폴로지 구성상 ISP에서 오른쪽으로 돌아서 R1에 갈 수도 있으므로 양쪽다 걸어준다.


** clear ip route *  라우팅 테이블을 초기화 시킨다.

AND


@ STP 802.1D표준
장점 : loop방지
단점 : alternated port 생성
 alternated port가 FWD되는데 시간차 있음 === >>  convergence time 길다

스위치전원을 인가했을 때 상태변화 

Blocking (20sec) -->  listening (15sec) --> learning(15sec)

@STP convergence time 줄이기 :
1, portfast,
2. uplinkfast
3. backbonefast




1. portfast  : 스위치 입장에서 pc가 연결된 access port에 설정
   설정전  : listening (15sec) --> learning(15sec) -->Forwarding
   설정후  : 전원이 들어오자마자 FWD(forwarding)
   설정 방법 : int fa0/3    (pc연결포트)
     switchport access vlan 10
     switchport mode access
     spaning-tree portfast          --> 이것만 해줘도 된다.
     end
   확인  : fa0/3(pc연결된포트)에 pc전원을 off-->on..스위치 포트상태확인

<pc2는 portfast설정, pc3은 설정안하고 ,,, 둘다 전원을 껐다 켠 상태 > 

 
 2. uplinkfast  : blocking된 alternated port에 설정
   설정전 : blicking -->장애 --> listening (15sec) --> learning(15sec) -->Forwarding
   설정후  : blocking -->장애 -->FWD
   설정방법  :
     conf t
     int fa0/1
     spanning-tree uplinkfast         
      여기서 alternated port가 있는 스위치의 해당 포트에 설정

<Switch 2에 주황색 포트에 들어가서 셋팅하면된다  주황생 포트는 현재 alternated포트인데, Switch1이 Root Switch인 상태에서 Switch 1과 Switch2사이에 장애가 발생시  주황색 alternated포트가 활성화되는걸 바로 지정해준다.>


 3. backbonefast :  모든 스위치의 (스위치가 연결된) trunk port에 설정, 20초 단축
   설정전 : FWD-->장애 --> blocking(20sec)-->listening (15sec) --> learning(15sec) -->Forwarding
   설정후  : FWD-->장애 --> listening (15sec) --> learning(15sec) -->Forwarding
   설정방법  :
     conf t
     int fa0/1
     spanning-tree backbonefast enable
      여기서 alternated port가 있는 스위치의 해당 포트에 설정


@DTP, VTP   는 PC까지 전달되지 않음,,, STP는 PC에 전달됨.
 ===    스위치에서 show spanning-tree 한 정보를 볼 수 있음.

STP보안정책

  -bpdu guard : bpdu를 수신시 shutdown해서 사용하지 못하게 함,  스위치와 스위치는 하면안되니까 스위치와 PC사이에 즉, 스위치입장에서 PC가 연결된 port.
     : 공격이 들어올만한 포트에 걸고, 서버가 연결된 포트에는 걸지 않는다.
   설정방법   
     conf t
     int fa0/3
     switchport mode access
     spanning-tree bpduguard enable
     end
  -bpdu filter  : bpdu를 수신시 무시.  일반 data traffic은 제외,
   설정방법     
     conf t
     int fa0/3
     switchport mode access
     spanning-tree bpdufilter enable
     end
  -root guard :  특정 스위치가 root 스위치가 되지 않도록 거는거, 설정된 포트에 접속된 스위치들은 루트스위치가 될 수 없도록.
     ROOT ID가 가장 낮은 BPDU가 수신하면 shutdown함

<Root guard 적용시 정책을 걸어줄 포트이다. 여기서 Sw 2가 루트가 되면 안된다. 그래서 루트스위치가 안되게 하려고 현재 루트 스위치인  위쪽 2개에 그리고 pc가 공격할 수 있으므로 pc연결된쪽에 걸어준다>



@POrt-secutiry

PC가 연결되어 access port에 대한 보안정책 설정
정책을 어기면 해당 interface shutdown됨

 

show port-security int fa0/3          (PC가 연결된 포트)
 : 해당정보 확인하기,
 나오는 정보
  활성화여부, 
  어겼을때 처리 방법,
  최대 맥주소 허용갯수(자기거꺼 포함),
  서버가 연결된경우(주로) 스태틱한 맥주소 갯수
  및 설정 --> Sticky Mac Address (이거는 장비가 자동으로 맨처음 연결 시 등록)

 

적용시키기
  conf t
  int fa0/3
  switchport
  switchport mode access          (디폴트는 dynamic이므로
  switchport port-security ?
      mac-address  xxxx.xxxx.xxxx //// mac 주소를 정적으로 등록
      mac-address st
     
      maximum x  // 학습할 mac수 제한   default로 access port는 1 !!!
      violation  //정책 위반시
       위반시 행동사항
        1. 정책을 위반한 mac주소가 초기화된다.
        2. shutdown된다.

  switchport port-security       //활성화


 실습하기

  int fa0/3
  switchport mode access
  switchport portsecurity mac-address xxxx.xxxx.xxxx
  switchport port-security  //활성화
  
   show port-security int fa0/3
  show mac-address-table

  이후 다른 컴퓨터 연결
  IP주소 할당 (arp발생)

  show ip int brief에서 administra down이 아니라 down
  show int status err-disabled       // 에러port와 이유 확인가능
  show int fa0/3

 확인 

   show running-confg
   show mac-address-table
   show port-security int fa0/3


 

에러 복구
  show running-config 에서 shutdown 되어있는 상태에서만 no shutdown이 적용된다
  따라서
  원래대로 인터페이스 복구하고
  케이블을 빼거나 shutdown한다음에
  no shutdown   
  ( 클라이언트가 연결될 포트 에 정적으로 맥주소가 설정되어있는경우 no~~~~로 해제하고st
  *** 주의 위반 정책이 또 적용되면 다시 shutdown된다.




****

violation 차단정책은 shutdown이 default이다. 

하지만 

violation protect 는  정해진 mac이 아니면 셧다운을 하지않고 그냥 무시한다

violation restrict 는 정해진 mac이 아니면 셧다운을 하지않고 그냥 무시하고 log를 남긴다




@traffic control(트래픽제어)

- traffic 제어 (storm control)

유니캐스트 멀티캐스트 브로드캐스트 트래픽이 1초이상 특정 수준 이상으로 많이 수신되었을 때 일시적으로 차단함

설정

conf t

int fa0/3

storm-control broadcast level 30   //broadcast 30% 이상이면 차단

- protected port

protected port로 설정된 포트끼리 통신안됨,  스위치 아래 두 사용자가 연결된 포트 각각에 걸어주면 두 사용자 끼리 는 통신안된다.

unicast / muiltcast / broadcast

확인

- port-blocking

설정한 포트는 목적지 주소가 mac주소 table에 없는 프레임을 flooding.  스위치는 mac-table에 없으면 자기자신을 제외한 모든 포트에 flooding하므로 

스위치에 서버가 연결되어있을때, 스위치에서 서버에게는 mac-table에 없는 브로드나 유니캐스트를 전파하지않게 하기 위해서

설정

conf t

int fa0/3

switchport block unicast

switchport block broadcast

확인

show int fa0/3 switchport

여기서   Unknown unicast locked : enable

    Unknown broadcast locked : enabled                         이런 항목 확인


@  VLAN ACL 

명령어

access-list 'acl'qjsgh' permit '조건'

vlan access-map '이름'

match ip address ' acl번호'

action drop 

exit

vlan filter '이름' vlan-list 'vlanID'

--


L3스위치  구성


conf t이더채널묶기, 

ip routing  =====>>>  L3스위치로 활성화 시키기... 라우팅을 해라는 뜻.

L3스위치에서 

vlan추가

vlan 2

exit

vlan 3

exit

vlan 4

exit


가상 인터페이스 만들기


int vlan1

ip address 210.109.3.62 255.255.255.192

no shutdown

show ip int brief 에서 vlan에 셋팅된거 확인            

                        셋팅안되면, vlan이 생성안되었거나, trunk access포트가 없을시에 셋팅안됨


int vlan2

ip address 210.109.3.126 255.255.255.192

no shutdown


int vlan3

ip address 210.109.3.190 255.255.255.192

no shutdown


int vlan4

ip address 210.109.3.254 255.255.255.192

no shutdown


int vlan 1

ip address 210.109.4.2 255.255.255.0

exit


ip default 210.109.4.1


end

 확인

sh ip int brief

마지막에vlan1~ vlan4까지 ip셋팅확인

sh ip route

해서 라우팅 테이블에 설정된거 올라와있나 확인


그림 

VLAN-L2.jpg

 

위에 과정은 trunk port로 작동시킨것이므로 L2로 작동시킨것임




새로운 L2스위치 추가하고 

int vlan 1

ip address 210.109.4.2 255.255.255.0

exit

ip default 210.109.4.1

end





L3스위치에서 fa0/24포트에 210.109.4.1셋팅


int fa0/24

switchport

no switchport     ---->너는 L2가 아니야

iip address 210.109.4.1 255.255.255.0 셋팅    ----->> 라우티드 인터페이스 

show ip route 에 올라오는지 확인

210.109.4.0/24 

그림

VLAN-L3.jpg



문제가 주어지면, 각각의 스위치에 대한 설정을 한다

VLAN이 할당되어 있을때, VLAN이 할당되어 있으면 VLAN '번호' 을 셋팅.

conf t

vlan 100

name xx

VLAN interface 에 ip 가 할당되어 있으면 ip할당.(셋팅에 자신있으면 셋팅부터 하고 나중에 VLAN할당)

conf t

int vlan 100

ip x.x.x.x x.x.x.x


vlan 영역안에 있는 스위치 포트가 access/ trunk 이던지  해당 VLAN 에 속해 있다고 알려줘야한다

int range fa0/15-16

trunk port일때

switchport trunk encapsulation dotq1

switchport trunk allowed vlan x (  switchport trunk allowed vlan add, all, except, none, remove)  

                                                                          여러개가 있음 . 기존에 있을때 추가, 제거, 모두 등..

switchport mode trunk

access port일때

switchport access vlan x

switchport mode access

위 과정을 완료후 

  sh vlan

하면 해당 vlan 이나 sh int trunk 로 확인하면 access trunk 포트가 셋팅되어있는걸 확인 할 수 있다. 

정보확인중, 해당 포트가 우리가 원하는 vlan에 셋팅이 되어있어야 해당 vlan에서 해당 포트만이 통신이 가능하다.

만약, etherchannel로 묶고 싶으면, 해당 인터페이스에 들어가서 셋팅한다.

 channel-protocol lacp (pagp)

channel-group '번호' mode active

VLAN 안에 PC가 통신이 되는지 확인




코어계층
:빠른처리, 여러개 포트 묶기


분배계층 : 라우팅,이더채널묶기,   


ACC계층 : VTP, STP, port정책 




그림에서 192.168.100.2 를 PC에게 gateway로 알려줄까 3을 알려줄까.... 하는 문제점이 있다.  


AND

다중 VLAN환경 구축

PVST : vlan마다 stp작동

DTP : dynamic trunk protocol
(switchport를 자동으로 trunk port로 작동)

trunk port 설정방법 : 자동  , 수동


확인 명령어
show int fa0/1 switchport 
administrative mode가 dynamic auto인지 desiable인지 확인



   수동설정
Switch 에서
show ip trunk          //확인
conf t 
switchport mode trunk    수동으로 지정하기   이때 DTP정보가 상대 편 Switch나 Router로 전달된다. 그래서 반대편도 trunk가 된다.
end
show ip trunk

자동
switchport mode dunamic auto //소극적    
  : 누군가 DTP를 보내기 전까지 가만히 있는다. 누군가 보내면 받아서 바로 trunk성립
switchport mode  desirable //적극적            
: 자기가 DTP를 보내고 trunk를 맺는다... 받는쪽도 받으면 바로 tunk성립


스위치 사이의 포트----여러경우 파악하기
switch port mode는 access 와 trunk가 있는데, 
확인하는 방법은 
sh vlan해서 vlan별 포트가 뜨는데 여기에 access만 뜬다
sh trunk에서는 trunk포트만 뜬다.


SW1 fa0/1 fa0/1 SW2
0) default(vlan1 access) dynamic auto : access
1) default static trunk : trunk
2) default dynamic desirable : trunk
3) access(default가 아님) static trunk : SW2 만 trunk     ---통신 안됨
4) access dynamic auto : access      
5) access dynamic desirable :
6) dynamic auto dynamic auto :
7) dynamic auto dynamic desirable :
8) dynamic desirable dynamic desirable :


양쪽의 포트가 같은 모드가 되던지, 혹은 한쪽은 정해진상태에서 다른한쪽은 auto모드여야 통신이 된다.
양쪽이 다른 모드이거나, 서로 기라디른 auto모드이면 통신이 안된다.

위의 수동으로 turnk모드 설정시 , DTP패킷이 발생하는데 이것을 발생하지 않게하려면 
int fa0/1
switchport nonegotiate


동기화(수신시)가능




 VTP: vlan  trunking protocol (default가 아니라서 수동으로 켜주어야 한다)
switch 별로 VLNA정보가 셋팅되어있는데 이 정보를 자동으로 다른 스위치에 전달해주는 프로토콜
  **  스위치를 이동해야해서 초기화 할때는 저장된 config파일과 램을 지워야한다
NVRAM안에 startup-config  를 지우고  flash안에 vlan.dat를 지운다.
naram:/starup-config
flash:/vlan.dat
램은 재부팅, # reload하면된다
케이블을 다 제거하고 아래 명령어를 주어야 한다
# erase start-config
# delete vlan.dat
#

VTP작동 모드 
: 서버, 클라이언트(default), transparent
vlan정보를  받고, 주고,  전달하는 

 
VTP version : 1, 2
ver1 : vtp도메인에 관계없이 서버가 클라이언트에게
ver2 : vtp도메인이 같아야만 수신하여 동기화함
vtp로 vlan정보를 전송 수신하는 영역
스위치가 vlan정보를 trunk포트로 수신 전송하여 자기보다 최신의 정보이면 업데이트 한다
정보확인
# sh vtp status

VTP version 2 :   버전이 같아야 통신, 패스워드도 같아야 통신
configuration revision :  Vtp 업데이트 기준으로 횟수...가장 최신정보가 어떤것인지 결정하는 요소
Max Vlans Suprot Locally  : 255   ;;;1000몇개까지 지원가능하지만 255까지만가능
Numb existing Vlans :6 //default vlan 1,1002,1003,1004, 1005, 10
Vtp op mode      :  ;     server
vtp domain name   //ver 2인데 도메인네임이 없다면 작동안한다!!!!!!! ver2인경우 작동의 여부.
vtp pruning mode             //가지치기,   한쪽은 v10, v20   한쪽은 v30일때 30이 10,20에게 정보를
보내도 필요없으므로 자동으로 스위치에서 막는다.
vtp v2 mode
vtp traps generation
configuration last mod by ;;vtp정보의 업데이트 발신자 정보 및 시간



VTP작동 방법
1) 각 스위치 초기화(케이블제거), trunk설정
int ran
2) 각 스위치의 VTP mode설정
: conf t
vtp mode client( server transparent)
vtp passwd xxx (서버의 경우 세팅 할 수 있다.)
3) 하나의 스위치(Server)에서 VTP 시작 : VTP domain name 설정
:conf t
vtp dimain BITEC
4) Server mode로 작동중인 스위치에서 vlan을 설정(생성, 수정, 삭제)
(클라이언트에서는 Vlan이 수정 생성 삭제 안됨)
5) 각 스위치에서 vlan정보 확인,   VTP확인
show vlan
show vtp status
or



***  transparent mode는 정보를 받으면 포워딩만 해주고 자기 정보랑 비교하지 않는다. 오직 받은정보를 전달만 한다.


transparant 스위치 옆에   새로 운 스위치 추가했을때, 셋팅과정
1.선 연결하지 말고  
2. hostname 
3. vtp mode client
4. int fa0/1
5. switchport mode dynamic desirable
6. 하고 선연결하면  최대 1분기다리면 전달받은 정보를 셋팅한다

***

새로운 스위치를 붙일때 붙이려고 하는 도메인영역의 configuration revision 넘버가 새로운 스위치(trunk port가 셋팅되어 있는 port로 연결시)의 리비전넘버보다 적으면 잘못된 정보가 전체 도메인에 적용되므로
항상 새로운 스위치를 초기화하고 추가한다
명령어
dir ?
erase startup-config
delete flsh:\vlan.dat
재부팅(reload)
sh vtp status

VTP 모드별 특징

*전달(forward) : 다른 스위치에게 vlan.dat정보를 받아서 또 다른 스위치에게 전달
*전송(send)    : 내 스위치의 vlan.dat정보를 다른 스위치에게 보냄

server(default)는 vlan 생성수정 삭제가능         전송가능        전달 가능 동기화(수신시)가능  
client는          불가능         전송가능 전달가능 동기화(수신시)가능
transparent          가능 전송불가능 전달가능 동기화(수신시) 불가능






다중Vlan환경 L3계층 스위치 사용해보기
L3스위치 3개연결
= 장비 이중화. 코어 레이어 스위치까지 가기위해  acc스위치를 거쳐서 dis 스위치 2개를 거치는 과정
(Access Switch 1대, Distribute Switch 2대)



1. 기본구성(hostname)
 
2. 다중 vlan환경 :  VTP
VTP domain : Switch
VTP passwd : bitec
VTP server : Sw1_DIS1
VTP client : Sw2_DIS2, Sw3_ACC

*다중레이어 스위치 장비 (L3)에서는 트렁크 포트로 전환시 확인사항
conf t
ip routing      이라는 명령어는 ip관련 동작을 하라는 의미이다.

따라서 트렁크 포트작동을 하려고하면 L2 스위치에서의 동작이기때문에

no ip routing  라고 한다.
또한
인터페이스에 관해서 셋팅을 해야한다
L3 switch interface 에 관해서 셋팅시 
no switchport
ip address...............

L2 switch interface에 관해서 셋팅시 
switchport   하고                ==>추가
switchport trunk encapsulation dot1q ==>추가
switchport mode trunk 


3. vlan 생성및 access port설정
서버에 vlan 10(sales) vlan 20(mng)  생성하고 
access 할 수 있는 vlan을 각 스위치, 각 포트에서 설정
S3_ACC에서
conf t
int range fa0/5-14
switchport access vlan 10
switchport mode access
exit
int fange fa0/15-24
switchport access vlan 20
switchport mode access
end
확인
show vlan
또는 show int fa0/5 switchport

4. STP 정책 설정(PVSTP)
STP 가 어떻게 돌아가는지 어느 포트를 사용하는지 확인
show spanning-tree
에서 root포트 확인하면 root포트가 연결되어있는 쪽이 root 스위치이다.
이후S1(fa0/21.22 )-----------------------------S2(fa0/21,22)
이더채널 그룹 1
# show spanning-tree vlan 10
에서 vlan 별로 root 스위치가 어떻게 되어있는지 확인가능 Root라고 되어있는 쪽이 
# show spanning-tree vlan 20

vlan 10 에 대해서 
; prority + mac값을 기준으로 루트스위치 결정하므로 SW1 의 priority 를 0으로 만든다  : SW1이 루트스위치따라서 트렁크 포트작동을 하려고하면 L2 스위치에서의 동작이기때문에
:   SW2 의 priority :4096
vlan 20에 대해서 
: Sw2_dis이 루트 prority 0
: SW1은 4096


명령어
SW1에서
spanning-tree vlan 10 root primary
spanning-tree vlan 10 priority 0
spanning-tree vlan 20 root secondrary
spanning-tree vlan 20 priority 4096 
SW2에서
spanning-tree vlan 20 root primary
spanning-tree vlan 20 priority 0
spanning-tree vlan 10 root secondrary
spanning-tree vlan 10 priority 4096 

5. Etherchannel(FEC) 
두 스위치 사이에 연결된 여러개의 포트를 가상으로 하나의 포트처럼 동작(  = 트렁크)
구성시에 사용되는 프로토콜 2가지
표준 : LACP(Link Aggregation Control Protol)
하나의 ether channel은 최대 8개까지 구성가능)
비표준 cisco : PAgP (Port Aggregation Protocol)
하나의 ether channel은 최대 16개까지 구성가능, 하지만 8개까지만 사용한다.
나머지는 백업  
L3스위치의 가상 인터페이스로 작동할때, 작동방식에 따라서 
layer 2처럼 작동 :switchport            (access/trunk  port)
layer 3처럼 작동 :Routed port         (패킷트레이서에서 작동안됨)

*** 주의점 
포트를 합칠때 동일한 종류의 포트끼리만 구성가능
ex >  access port인 경우 : 속도,  duplex, vlan ID 가 일치해야한다
   trunk port인경우 : encapsulation type, native vlan id, active vlan ID가 일치해야함
show int trunk에서 나오는 정보 + active vlan정보

spanning-tree 계산시 ether chennel을 하나의 포트로 본다.



실습

            1) S1(fa0/21.22 )-----------------------------S2(fa0/21,22)          이더채널 그룹 1  , protocol : LACP
passive                                          active

2) S1(fa0/23,24 )-----------------------------S2(fa0/23,24)         이더채널 그룹 2   protocol : PAgP
auto                                   desirable


1)
SW1
conf t 
int range fa0/21-22
switchport
switchport trunk encapsulation dot1q / switchport access vlan 10
switchport mode trunk                / switch mode access

channel-group 1 mode passive
end
SW2
conf t 
int range fa0/21-22
switchport
switchport trunk encapsulation dot1q / switchport access vlan 10
switchport mode trunk                 / switch mode access
channel-group 1 mode active
end 1 
2)
SW1
conf t 
int range fa0/23-24
switchport
switchport trunk encapsulation dot1q / switchport access vlan 10
switchport mode trunk                / switch mode access

channel-group 1 mode auto
end
SW2
conf t 
int range fa0/23-24
switchport
switchport trunk encapsulation dot1q / switchport access vlan 10
switchport mode trunk                / switch mode access

channel-group 1 mode desirable
end

2) 동일하게.....................


확인

 
show ip int brief            ====>>> 마지막에 Port-channel 이 생성된걸 확인 인터페이스 이름이
로 수정할때 이걸 이용한다.
show int port-channel '번호'
show etherchannel summary   ===>>   주로 쓰인다.
show int port-group '번호'

용어
etherchannel : 두 스위치 사이에 연결된 여러개의 포트를 하나의 포트처럼 작동하는것
channel-group : 여러개를 하나의 그룹으로 묶을 때 사용하는 명령어
port-channel : etherchannel로 묶어진 포트들의 집합


***********@@ load balancing 가능하다. 
# conf t 
# int port-channel 1
# show etherchannel load-balance
default로 셋팅되어있음 . 패킷트레이서에서는 명령어지원안함.
AND

VLAN의 형태는 크게 3가지 경우로 볼 수 있다.

1. 하나의 라우터 포트 아래 연결된 하나의 스위치 의 각 포트마다  VLAN이  할당되어 있는 형태
 :  원래는 라우터 아래 그림에서 전체가 하나의 네트워크 주소안에 포함되어 있었지만, VLAN을 위해서 서브네팅이라는 기술을 이용! 네트워크를 나눈다. 그리고 VLAN을 할당한다.
단순히 서브넷만으로도 네트워크가 나누어지고 VLAN의 대표적 장점인 브로드케스트 도메인도 나누어 지지만, 서브네팅을 하게되어 네트워크가 나뉘면, 각 네트워크마다 gateway를 할당해 주어야 한다. 즉, 라우터에서 인터페이스를 여러개를 써야 하는데, VLAN을 이용하면 하나의 인터페이스에 가상으로 서브인터페이스를 할당함으로 물리적인 인터페이스는 하나만 쓰게되는 효과가 있다. 



 2. 하나의 라우터 포트에 연결된 두개 이상의 스위치
: 대표적으로 많이 쓰이는 형태이다.. 두개 이상의 스위치가 라우터의 하나의 포트에 할당되어 있으며, 이러한 스위치는 층별로 스위치를 하나씩 두고 , 각 스위치에는 서브네팅된 호스트들이 네트워크 대역별로 몇개씩 나누어서 할당되어있다. 즉, 아래 그림과 같은 구조이다.

회사에서 부서 끼리는  층이 다르더라도 같은 서브넷에 속하게 하고,  VLAN으로 다시한번 묶는 것이다. 
이렇게 되면 VLAN끼리만 통신이 가능하게 되므로 업무상의 보안을 가능케하며, 위의 1번 케이스의 장점 또한 모두 포함한다.



3. 마지막 경우는 2번의  구조를 이루고 있는 라우터가 2개 이상일 때이다. 즉, 라우터를 넘어가는 VLAN이다. 
이 경우에는 라우터1에서의 vlan 100 과 라우터 2에서의 vlan 100 이 이름은 같지만 다른 vlan 100 이다. 왜냐하면 네트워크 주소가 다르기 때문이다.

이 경우는 거의 없다. 실제로 이렇게 VLAN을 구성하는 경우도 없고 사용하는 경우도 없다고 보면 된다.
녹색 영역에 VLAN이 v10,20,30구성되어있고 노란색 부분에 v10,20,30이 있지만 이름은 같아도 다른 vlan들이다.
그냥 헷갈려하지 않도록 알아두기만 하면된다.





즉, VLAN을 구성하기 위해서는 기본적으로 같은네트워크에 속한 상태이어야지만 VLAN으로 묶어줄 수 있다. 같은 네트워크를 만들기위해 하나의 큰 네트워크를 서브넷을 통해 작은 네트워크로 분할 하기도하고 ,
기존에 서브넷팅되어 쓰고있던 pc들을 그냥 VLAN으로 바로 묶을 수 도 있다.

  
AND

NAT
주소변환 기술
라우터 입장에서 특정 라인에서만 주소변화를 하기 위해서 ACL을 많이 사용한다.
특정 주소만 변환하려하면 ACL 필요없고 바로 NAT설정하면된다.


static NAT
공인IP와 사설 IP의 관계가 1:1
dynamic NAT
다수 : 다수,,   다수 : 1  의 관계
특정 네트워크는 ACL을 사용하여 분류한다. 바뀌고자 하는 사설 IP주소가 많은경우.
access-list 1 172..16.1.0  0.0.0.255(영업부)

라우터의 많은 인터페이스중에서 출발지를 결정하는 것은 라우팅 테이블을 기준으로 한다. 


여러개의 사설 IP가 하나의 이블에 추가
( ip route 211.34.77.136 255.255.255.248 211.3,공인IP로 바뀌어서 인터넷을 해야하는 경우 NAT 말고 PAT
 :   사설 IP가 인터넷을 할때 포트번호를 다르게 해서  : 공유기


@ 영업부만 ISP에 접근하도록 하자
사설 Source 172.16.1.0 /24   ==  네트워크 대역 이므로 ACL을 이용한다.
공인 Source 211.34.77.130 /252               하나의 공인 IP

표준으로 설정

정책
conft 
access-list 10 permit 172.16.1.0 0.0.0.25
ip nat inside source list 10 interface s0/0/0 overload
;;의미 nat 을 사용하는데, 172.16.1.0네트웍의 주소가 들어오면 s0/0/0으로 내보내는데, PAT를 사용해서 바꾸어라
적용
nat는 내보내는데도 적용하고 들어오는 데도 적용되어야 하므로 

int fa0/0
ip nat inside
exit

int s0/0/0
ip nat outside


이블에 추가
( ip route 211.34.77.136 255.255.255.248 211.3
ping test 172.16.1.1   >>211.34.77.134

ROUTER A 가 NAT 테이블을 가지고 있음
show ip nat translations
show ip nat statics



위의 명령어 테이블의 의미 알기

pro inside global(내부가 밖에 나갈때 바뀌는 공인 IP) inside  local (내부 사설IP) Outside local 
Inside = source.      outside = destination


@ 관리부만 ISP에 접근하도록 하자( 다수의 사설 주소 -->> 다수의 공인 주소)

사전에 공인망에 공인주소가 포함되어있어야한다.  (실제로는 ISP에서 한다)
ISP_R에 211.34.77.136 /29 network  을 라우팅 테이블에 추가
( ip route 211.34.77.136 255.255.255.248 211.34.77.130)

사설 source : 관리부 172.16.2.0        /24      ACL-20                        정책 1
공인 source :            211.34.77.136 /29 MNT_NAT 정책 2

source주소가 ACL 20과 동일하면 pool MNG_NAT로 바꾸시오

Router A  inside fa1/1
outside s0/0/0

정책설정
access-list 20 permit 172.16.2.0 0.0.0.255                                                               정책 1 
ip nat pool MNG_NAT 211.34.77.136. 211.34.77.142 netmask 255.255.255.248      정책 2
ip nat inside source list 20 pool MNG_NAT
적용
int fa1/1
ip nat inside
exit
int s0/0/0
ip nat outside
end

@NAT 설정3 (1->1)  static NAT변환              ISP에서 FTP서버로 접근 가능하게 하자
사설 Source : FTP 서버 172.16.34.250
공인 Source : 211.34.77.136 /29의 마지막 IP주소 

사전 설정  : FTP 서버가 연결되어 있는 ROUTER B에 default Router가 있어야 한다. 
ip route 0.0.0.0 0.0.0.0 172.16.25.33


라우터에 설정하는거는 아래와 같은데, 확인해봐야한다.
Router A
ip nat inside source static  ?       이렇게 해서 뒤에 나오는 형식대로 쳐줘야한다.


클리어 명령어

clear ip route
clear ip nat translation

테이블보기 

1. 인터페이스에 정책이 걸려있나 확인
2. 밑에 번호인식으로 되어있는 정책을 확인해서 어떤 정책인지 확인



스위칭
에이징 플루딩 포워딩 러닝
show mac-address-table

Vlan Mac Type Ports

라우터는 공장에서부터 인터페이스에 shutdown이 되어있지만 switch는 no shutdown되어있다. 
즉, 케이블만 연결하면 통신가능
라우터는 인터페이스에 맥어드레스가 할당되어있다. 스위치는 스위치 자체에 맥 주소가 할당되어있다.    # sh version

스위치는 Vlan ID가 할당되어있어서 모든 인터페이스가 속해 있다.  # sh vlan

스위치간에 주고받는 정보 STP          정보확인
show spanning-tree


처음 역할 분담시에, 네트웍 변화시에 STP를 주고받는다.


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

vlan  이유알기

VLAN이란 : Virtual Network


210.109.3.0 /26   에서 vlan 1 ~ 4로 나눈다.
이후 각각의 ip대역의 마지막 할당가능한 IP주소를 gateway 주소로 할당한다.
PC는 IP대역의 할당가능한 IP 첫번째주소부터 할당한다.

스위치에서 4개의 가상랜을 가지므로 , 스위치가 두개가 있다면 스위치 마다 4개씩 가지고있다. 
이 상태에서 스위치와 스위치간에 통신을 위해선 각각의 4개의 가상랜이 통신을 해야하므로 새로운 Vlan생성을 생성하고 포트를 설정한다

이 포트종류가 
access port  : switch ------------ pc연결되는 port   ;;;;;;;;;; 하나의 vlan이 소속된 port임
따라서 어떤 vlan에 소속이 되는지 설정

trunk port : sw -----------------sw           or            sw - --------------------gw   연결   ;;;;;;;;;; 물리적인 인터페이스는 하나인데 여러 vlan의 프래임이 전송되기 위해 vlan에 대한 정보를 (tag) 를 encapsulation한다.
encapsulation  Type 이 여러개인 경우, 지정이 필요하다.

encapsulation  Type:
1. 일반적인 프레임 ( data |   ip  |  ethernet}    +  추가적인 vlan ID 정보          == 표준     cisco   ISL
2. 일반적인 프레임아님 ( data |   ip  |  dst mac.src mac. length, vlan id정보 }    ===== 비 표준     802.1Q

설정
1. 필요한 VLAN생성
! switch
conf t
vlan x
name ??
end
show vlan
show vlan

2. access / turnk port 설정
스위치에서 ..
int fa0/0   (access)
switchport
switchport mode accesss
switchport access vlan x
int fa0/24 (trunk)
switchport mode trunk 
end
show int trunk
show vlan

라우터에서 
라우터에서는 각 서브인터페이스 들어가서 encapsulationdot1q [vlan번호]  를 입력한다
int fa0/0.x
encapsulation  dot1q x            //   둘다 지원하는 장비는 명령어가 있지만, 하나만 지원하면 명령어자체가 없다. ex > c2900 시리즈는 802,type 여기서 x는 vlan번호

3. gateway 설정
Vlan을 4개사용하므로 gateway도 4개가 필요하다. 
물리적 인터페이스는 1개이다. 
그래서 서브 인터페이스(가상)을 이용한다. 
VLAN ID interface ip addr
Vlan 1: fa0/0.1 210.109.3.62
Vlan 2: fa0/0.2 210.109.3.126
Vlan 3: fa0/0.3 210.109.3.190
Vlan 4: fa0/0.4 210.109.3.254
int fa0/0.1
ip address 210.109.3.62 255.255.255.192  
이런식으로 4개를 다 해준다. 


단,   L3( IP address) 할당하기 전에, L2정보를 인식하기 위해서 설정해야함
fa0/0은 활성화해야한다.


확인
VLAN ID, access port 확인
# show vlan
trunk port  확인
# sh interface turnk
같은 vlan내에서 ping
다른 vlan끼리 ping

AND

3계층 장비는 2계층 정보를 해석할 수 있다. 

라우팅 테이블은 라우터의 configure에 의해서 생성된다

스위치는 learing을 통해서 패킷의 오고가는 걸 통해서 배운다.




show ip interface brief 에서 administratibely down의 의미는 shutdown되어있다는 뜻

스위치에도 IP  할당가능하다

123.123.123.0/24
123.123.123.1 ~ 123.123.123.254

GW :123.123.123.254/24
SW : 123.123.123.253/24
PC : 123.123.123.1~200/24
serve : 123.123.123.201~252/24

스위치는 L2계층이라서 IP할당은 못한다.
따라서 가상인터페이스에다가 IP를 할당해야한다. VLAN에다가

no shut
ip address 123.123.123. 255.255.255.0
exit
ip default-gateway 123.123.123.254
end
show running-config
show ip interface brief

스위치와 라우터의 테이블을 확인하자

SW_# > show mac-address-table

RW_#> show ip route

200.248.52.0/24

GW : 200.248.52.254/24
SW : 200.248.52.253/24
DNS : 200.248.52.250/24
WEb 200.248.52.249/24

static설정
config terminal
복습!!


routing table에서 
S 123.123.123.0/24 [1 / 0 ]
[우선순위 / metric ]
[Administry distance / 계산된값 ]
= AD / 계산안하므로 0

거리(홉)= RIP
거리+ 대역폭 = OSPF
거리 + 대역폭 + 딜레이 = IGRP EIGRP
??   = EGP
BGP = 속성값




접근제어 목록ACL

패킷에 대한 네트워크, 주소에 대해서 접근을 허용 or 거부
--> 정책을 적용함으로써 실행

ACL 분류
묶는 방법으로 분류
Number ACL
Name ACL
정책의 생성방법에 따라서 분류
동적 ACL
어떤 행위 (인증)를 하면 자동으로 정책이 생성
정적 ACL
관리자가 직접 정책을 생성
ACL생성시 특정 네트워크나 특정 주소에 대해서 조건을 생성할때조건에 따라서 
표준 ACL
조건에 "누가" 만 판단한다.
source IP address만 조건으로 체크
확장 ACL
조건에 "누가 , 누구에게, 목적" 가능
src, dst,  ip_header_protol, tcp/udp_ port-Number
ACL 명령어
number 표준 acl
Router(config)# access-list 1-99 'action' '조건':src addr'
number 확장 acl
Router)config)# access-list 100~199 'action' '조건:protocol src dst'
named 표준 acl
Router(config)# ip access-list standard '이름'
Router(config-)# 'action' '조건:src addr'
named 확장 acl

ACL 설정

1)ACL 정책만들기
2) 만든 정책을 적용하기

정책을 만들기 전에 표준인지 확장인지 결정하고,
정책을 적용할 라우터를 결정하고 라우터의 어느 인터페이스에 정책을 적용할지 결정한다
정해진 정책의 순서를 바꾸는것은 아래 나와있다.
적용순서 중요하다



ACL을 dst가까이에 적용해보자

1. 172.16.1.1 만 web, dns 허용, 목적지 가까이 . 표준만으로도 가능
2. 172.16.1.0 /24 네트워크에서 1.1 만 거부 .나머진 허용. 확장   

1. 172.16.1.1 만 허용, 목적지 가까이 . 표준만으로도 가능
정책 만들기;;;   정책은 여러개 만들고 
en
conf t 
access-list ;; 뒤에 번호를 붙이면 번호에 따라 표준인지 확장인지 구별가능
번호 acljava 패킷 보내기
access-list 1 ?
access-list 1 permit ?
access-list 1 permit host(한대)
access-list 1 permit any(모두)
access-list 1 permit host 172.16.1.1         //한대만 허용 : 번호 1번
ip access-list    ;;;;위의 access-list와 다른 방법이다. 차후에 알아보자

적용  ;; 적용은 여러개의 정책을 묶어서 하나로 적용
int fa0/1
ip access-group 1 ?  ;;그룹 1번
ip access-group 1 out    라우터 입장에서 나갈때 하나만 허용

end
show ip access-list
show running-config 
;;; access-list가 interface에 적용되어있는지 확인
ip access-group 1 out이 있어야 한다.

ACL정책 만들때 주의
정책 마지막에  " 모두 거부 "  = any deny 가 숨어있음
목적지에 가까이 거는 경우에는 소스에대한 직접적인 제어가 많이 이루어짐, 위의 경우                                   에서도 표준
소스에 가까이 거는 경우에는 확장, 




2. 172.16.1.0 /24 네트워크에서 1.1 만 거부 .나머진 허용.

정책만들기 

conf t
no access-list 1
access-list 1 permit 172.16.1.0 0.0.0.255
access-list 1 deny host 172.16.1.1
end
                            **************위에 access-list 순서처럼하면 1.1은 허용된다. 
왜냐하면 윗줄이 우선순위가 높다 위에서 부터 아래로 정책이 적용되어지므                                       로 생각해서 순서배치
따라서 위의 순서를 바꾼다.그리고 다음단계로 적용
적용하기
int fa0/1
ip access-group 1 out
end


ACL을 source에 가까이제 적용한다.

3. 172.16.1.1 은 ftp서버 접근 거부
172.16.1.2 는 web서버 접근 거부  
-======================== 두개를 한꺼번에 같이한다.
정책만들기
기존꺼 지우고 
conf t 
show ip access-list 
no access-list 1
show ip access-list 

ip access-list extended ACL
;;;;  access-list 100  이상이면 확장인데 귀찮으니까 위에껄로쓰는거다
deny 

"acion" "protocol" "src관련'  "dst"관련

deny ip host 172.16.1.1 host 172.16.34.250      ///1.1 이 34.250에 접근을 거부
deny ip host 172.16.1.2 host 200.248.52.249
permit ip any any
또는
permit ip 172.16.1.0 0.0.0.255 any
적용하기
intface fa0/0 
ip access-group ACL in


이 상황에서 새로운 적책을 추가하게 되면??(그냥 예를들어본것)
deny ip host 172.16.1.3 host 172.16.34.251   

*******위의 정책 테이블 모습
deny ip host 172.16.1.1 host 172.16.34.250  
deny ip host 172.16.1.2 host 200.248.52.249
permit ip any any
deny ip host 172.16.1.3 host 172.16.34.251
----
위에 상황은 sh ip access-list 하게 되면 위의 상황이 보이게 되는데 , 이렇게 되면 순서가 위에서 부터 적용되므로 마지막꺼는 적용이 안된다
그래서 실제는 목록 앞에 번호 가 10,20,30....붙는데, 이때 
no 30이런식으로 해서 지워주고 다시 permit ip any any를 추가하게 되면 정상작동한다.
4. 해당 서비스만 가능케하자

서비스인 경우에는 tcp/ udp를 체크한다.

172.16.1.0/24 dns서비스 허용
172.16.1.1 dns서비스 허용      ftp, ping 안됨
172.16.1.2 ftp 서비스 허용       web, ping 안됨 
나머지 4 5 6 은 거부    dns만된다.

정책만들기
en
conf t
no ip access-list extended ACL 
int fa0/0
no ip access-group ACL in
end
지우고 시작
ip access-list extended SERVICE
permit udp 172.16.1.0 0.0.0.255 (src port는 랜덤하므로 신경쓰지말고) host 200.248.52.250 eq 53
                  (port==53, 큰경우작은경우도 있지만 가장많이 
쓰이는게 같은경우이다.        
                    //250으로 가는 모든 DNS만을 허용한다.
                            
                       
                        permit tcp host 172.16.1.1 host 200.248.52.249 eq 80   //웹
permit tcp host 172.16.1.2 host 172.16.34.250 eq 21 //ftp 인증
  permit tcp host 172.16.1.2 host 172.16.34.250 eq 20 //ftp 전송
exit

적용하기
int fa0/0
ip access-group SERVICE in

'네트워크 > 라우터 & 스위치' 카테고리의 다른 글

VLAN 개념정리 !  (0) 2011.05.18
0517정리 , NAT셋팅 및 VLAN 설정  (0) 2011.05.18
라우터 ACL설정시 wild card사용법  (0) 2011.05.17
0414 공부정리  (0) 2011.04.14
0413 공부정리  (0) 2011.04.13
AND

   
IP 주소가 1.1.1.1~ 1.1.1.3   인 pc를  access-list에 적용시키고자 할때 wildcard를 쓰면 
한줄에 추가할 수 있다 . 
라우터에서 ACL을 처리할때 wildcard를 사용하게 되는데 특정 영역대의 IP또는 Network 주소를 지칭할때 IP주소별로 한줄한줄 정책을 입력하는 것이아니라 네트워크 주소와 wildcard를 써서  한 줄에 나타낼 수 있다. 

 


일단, 여기서 wild card의 원리를 알아보자 
 

와일드 카드 마스크(wildcard mask)란 특정 비트와의 일치 여부를 지정할 때 사용되는 표기법 이다. 와일드 카드 마스크를 적절히 사용하면 여러개의 네트워크를 아주 간단하게 표현할 수 있다.

와일드 카드 마스크에서, 반드시 일치해야 하는 비트는 0으로 지정하고, 일치 여부와 상관없는 비트는 1로 지정한다.


예시 > 1.1.1.1 ~ 1.1.1.3 의 주소를 한번에 표기하기 위하여 위하여 wild card주소가 필요하다 .
            wild card는? 네트워크 주소는 1.1.1.0 이다. 


보통 , 1.1.1.0   0.0.0.255 의 의미는 1.1.1. 로 시작하는 모든 IP 주소라는 의미이다.
 따라서 이러한 wild card를 이용하면 특정 영역의 IP주소 또는 네트워크 주소를 가리키는 것이 가능하다. 

ex > 172.16.0.0  0.0.255.255의 의미는 172.16. 으로 시작하는 모든 IP 주소라는 의미이다. 


wild card 표기법을 살펴보자.

위의  IP 주소를 2진수로 나타내면 다음과 같다. 

1.1.1.1   :   
0000 0001 ,  0000 0001, 0000 0001, 0000 0001            

1.1.1.2   :   0000 0001 ,  0000 0001, 0000 0001, 0000 0010

1.1.1.3   :   0000 0001 ,  0000 0001, 0000 0001, 0000 0011


지금 우리는  IP주소나 네트워크 주소의 특정 영역을 가리키기 위한 wild card값을 찾아보는 중이다.

그러므로  위의 1.1.1.1 ~ 1.1.1.3에서 빨간부분은 안바뀌는 부분, 까만부분은 바뀌는 부분이다. 3개를 동시에 생각해야 하므로 1.1.1.1에서도 바뀌는 부분은 1  하나만이 아니라  01이 되는것이다. 
wild card는 이 부분을 살펴보면된다. 
즉, 안바뀌는 부분인 빨간색 부분은 0으로 대체하고 , 바뀌는 부분인 까만색은 1로 대체한다.
그러면 다음과 같다. 

1.1.1.1   :   0000 0000 ,  0000 0000, 0000 0000, 0000 0011               ===> 0.0.0.3

1.1.1.2   :   0000 0000 ,  0000 0000, 0000 0000, 0000 0011               ===> 0.0.0.3             

1.1.1.3   :   0000 0000 ,  0000 0000, 0000 0000, 0000 0011               ===> 0.0.0.3


Wild Card = 0.0.0.3

세가지 IP주소 모두 0.0.0.3  이것이  1.1.1.1 ~ 1.1.1.3 까지를 가리키는 wild card이다. 
표기는 [네트워크주소][wild card]          =   . 1.1.1.0  0.0.0.3 이다





다음으로 네트워크 주소를 예로 들어보자 


172.16.0.0  0.0.255.255의 의미는 172.16으로 시작하는 모든 IP 주소라는 의미이다.
발신지가 10.1.2.0/24이거나 10.1.3.0/24인 네트워크를  모두 차단하려면 다음과 같이 설정한다.
(Router에서 설정하는것이다.) 


access-list 2 deny 10.1.2.0 0.0.0.255

access-list 2 deny 10.1.3.0 0.0.0.255


그러나 다음과 같은 와일드 카드 마스크를 적용하면 한 문장으로 표현할 수 있다.

access-list 2 deny 10.1.2.0 0.0.1.255


그 이유를 살펴보자. 10.1.2.0 부터 10.1.3.0까지를 2진수로 표시하면 다음과 같다.


10.1.2.0 : 00001010.   00000001.   00000010.  00000000
10.1.3.0 : 00001010.   00000001.   00000011.   00000000

직관적으로 이해해서 
여기서 빨간 숫자들은 모두 같은 부분 , 다른말로하면 바뀌면 안되는 부분이고 
찐한 숫자들은 앞으로 바뀌어질 가능성이 있는 부분이다.

따라서 이 두 IP주소를 동시에 나타내주는 Wild Card는 빨간부분은 0으로 까만부분은 1로
0000 0000.  0000 0000.  0000 0001. 1111 1111 로 나타낼 수 있다. 

이것을 10진수로 바뀌면 다음과 같다.
 
0  .  0  .  1  .  255 




'네트워크 > 라우터 & 스위치' 카테고리의 다른 글

0517정리 , NAT셋팅 및 VLAN 설정  (0) 2011.05.18
0516 정리,, 이전 내용 복습 , ACL 라우터 설정  (0) 2011.05.17
0414 공부정리  (0) 2011.04.14
0413 공부정리  (0) 2011.04.13
0412 공부정리  (0) 2011.04.13
AND