본문 바로가기

AWS 교육/Cloud-Python (수)

241016_Switch VLAN, DHCP, Standard ACL

728x90

www.icqa.or.kr 

 

OSI 7계층 (Open System Interconnection) 상호 호환

- ISO에서 제안한 모델

ㄴ 인터넷 : 국가주도 개발 : TCP/IP

ㄴ 근거리 통신망 : 각 벤더별로 각자 개발 : FDDI Ethernet

- 표준 프로토콜을 사용해서 다양한 통신 시스템끼리 서로 통신할 수 있게 국제표준기구에서 만든 모델

 

 이진수 데이터(디지털) > 시그널 변환 > 유/무선 > 오류제어 + 암호화

 

통신 시스템을 7개의 추상적인 계층으로 나누었다

 

네트워크, 시스템 상의 이상 발생 시에 문제를 분석하고 원인을 찾을 때 모델 상의 어느 계층의 문제인지 범위를 좁힐 수 있어 시간, 노력의 낭비를 줄일 수 있다

 

osi 7계층 (네이버박스의 03 Network_Hacking(최종본).pdf 의 30~31 페이지 확인)

계층 이름 설명
7계층 응용   사용자 (개발자, 클라이언트)  서버 = 서비스(http, smtp, ftp) => 원본(Source)
6계층 표현   코드(ASCII)  JPEG MPEG + 암호화(인캡슐레이션)
5계층 세션   port number : 상위의 서비스 종류를 식별하기 위한 번호 (80, 20, 21)
4계층 전송   TCP 상위로부터 전달받은 원본을 일정 크기로 분할  =>  세그먼트
3계층 네트워크   헤더(출발지, 목적지 IP 주소) + 세그먼트  =>  패킷
2계층 데이터링크   헤더(MAC 주소) + 패킷 + CRC(체크썸)  =>  프레임
1계층 물리   비트 스트림, 시그널  =>  케이블

5~7계층은 하나로 묶어서 취급하는 경우가 많다

 

 

네이버박스 > ARP 정리된 거 : 4가지 전부 다운

전송에 관한 apt파일로서

ip와 맥주소가 포함된 형식이 전송되는 내용을 확인 가능

ARP1.pkt
0.07MB

 

◆ ARP 정리

 - Router는 서로다른 네트워크를 연결하는 장비

   Broadcast Domain을 분할한다

 - Hub, Switch는 서로 다른 장비를 같은 네트워크로 연결한다

 - Hub는 Collision Domain을 분할할 수 없으며,

    Switch는 Collision Domain을 분할할 수 있다(Broadcast는 일반적으로 분할 불가함)

 - Switch는 프레임에 Tag를 부착하여 놀리적인 가상의 개념으로 Broadcast Domain을 분할하는 기술이 있다

 

◆ VLAN (Virtual LAN : 가상 랜)

 - 가상화는 물리적으로 한 대인 것을 마치 여러 대인 것처럼 해주는 기술

 - 한 대의 스위치를 여러 대와 같이 사용할 수 있으며, 여러개의 네트워크 정보를 한개의 포트로 전송할 수 있다

 

  ex) 회사는 네트워크 주소를 3개를 사용중이다

   본관 : 라우터에는 3개의 이더넷 인터페이스가 있어야 한다 즉, 각각의 스위치가 연결되어야 한다

   별관 : 3개의 네트워크 주소가 모두 필요하다 => 스위치도 3개가 필요

 ★총 스위치가 6개가 필요하나 VLAN 사용 시 

   라우터는 스위치와 1개의 물리적인 인터페이스만을 사용하여 3개의 다른 네트워크 주소를 전송할 수 있다

   VLAN을 사용하면 하나의 링크로 여러개의 네트워크 주소를 보낼 수 있다

   각 사무실의 스위치에 VLAN을 설정하고 두 개의 스위치를 서로 Trunking 설정하여 한자의 포트만 사용하려는 사무실의 VLAN으로 설정하면 된다

 

 - VLAN은 번호로 구분한다

 - VLAN 은 한 대의 스위치를 여러 개의 네트워크로 나누기 위해 사용 하지만 VLAN으로 구분된 장비들은 L3장비를 통해야만 통신이 가능하다

 - VLAN 설정은 포트별로 해야한다

 - 설정 전 디폴트로 VLAN 1에 속해 있다

 

 ★ 하나의 포트가 하나의 VLAN 에만 속한 경우를 [Access mode]라고 한다

      , 즉 한 포트가 자신이 속한 VLAN의 프레임만을 전송할 수 있다

 ★ 스위치와 스위치가 하나의 포트로 연결되어 있는 경우는 하나의 포트에 여러개의 VLAN 프레임이 모두 다녀야 각 VLAN 별로 정상통신이 가능하다

     이 경우 하나의 포트에 열러개의 VLAN이 다니는 경우를 [Trunk mode]라고 한다

 

[설정해보기]

◆ VLAN 설정

 - 1~1005 : normal VLAN ( 1~1001 이더넷 / 1002~1005 토큰링, FDDI )

 

◇ Access port 설정

 - 각 인터페이스를 생성한 VLAN에 할당한다

 ㄴ L3장비를 거치지 않을 경우 같은 VLAN에 할당된 인터페이스에 접속한 장비들 사이에서만 통신이 가능함

fig)# interface fastEthernet 0/1                     // 생성한 VLAN에 소속될 인터페이스 에서 설정

fig-if)# switchport mode access                    // 현재의 인터페이스를 access 포트로 설정

fig-if)# switchport access vlan 10                 // 포트가 속할 VLAN 번호 지정

 

◇ Trunking 설정

 - 여러개의 vlan을 실어나르는 것

 - 스위치에 여러개의 vlan이 있는 경우 각 vlan별로 각각의 링크를 만들어야 하지만 

   그럴경우 너무 많은 링크가 필요함

  ㄴ 하나의 포트에 여러개의 vlan이 다니는 경우를 [Trunk mode]라고 한다

 ☆방식

  ISL                      시스코 장비 전용

  IEEE802.1Q       트렁킹 표준 프로토콜  // 현재 이방법 사용

 

fig-if)# switchport mode trunk      // 다른 스위치와 연결된 인터페이스 에서 입력

 ㄴ 해당 명령어까지 입력해야 같은 네트워크 끼리 ping 이 가능해진다

fig-if)# switchport trunk encapsulation dot 1q

fig-if)# switchport trunk allowed vlan 10, 20

 

◇ 스위치 초기화

# delete vlan.dat                 // vlan 정보 삭제

# erase startup-config

# reload                               // 재부팅

 

다른 네트워크 끼리 ping 하기위해 라우터가 필요함 (int f0/0 에 no sh 한 후)

형식으로 하며 PC의 게이트웨이를 라우터의 .254로 설정 시 서로 ping 이 되는 것을 확인 가능

1016_Switch vlan 기초.pkt
0.07MB

 

[총내용 요약]

 

 

[응용 연습 해보기]

 

 

 

◆ DHCP (Dynamic Host Configuration Protocol)

 - PC 가 네트워크에 참여하기 위해서는 IP주소가 필수적

 - PC 가 지정된 주소를 가지는 것이 아니라 부팅 시에 DHCP서버로부터 동적(자동)으로 IP주소를 받아오는 방식

  ㄴ서버의 경우 자동이 아닌 정적(수동)으로 설정해야 한다

 - 자신이 사용할 IP 주소 / 서브넷마스크 / 기본 게이트웨이 / DNS 주소

 - 주소 배정을 자동으로 할 시 IP관리가 편해짐

 - Lease(임대) 서비스이기에 사용기간을 정할 수 있다

 

 ◇ 동작

  Discover : 클라이언트 -> 서버

  Offer       : 서버 -> 클라이언트

  Request : 클라이언트 -> 서버

  Ack         : 서버 -> 클라이언트

 ㄴ의 4단계로 구성됨

 

 ◇ 설정

  R(config)# ip dhcp pool <name>                                      // dhcp가 사용할 주소의 영역의 이름 지정

  R(dhcp-config)# network 192.168.10.0 255.255.255.0    // 할당된 주소 대역

  R(dhcp-config)# default-router 192.168.10.254               // 기본 게이트웨이

  R(dhcp-config)# dns-server 192.168.10.100                    // dns 주소  

  R(dhcp-config)# domain-name busanit.net                      // 도메인 이름 지정

  R(dhcp-config)# lease 7                                                   // 임대기간, days, infinite

  R(config)# ip dhcp exclued-address 192.168.10.254       // 제외할 주소(서버, 게이트웨이) + 192.168.10.100 도 추가

  R# show ip dhcp binding                                                   // 할당된 내역 확인

강사님께서 만든 dns-dhcp 패킷트레이서

 

[만들어보기]

적혀있는 내용대로 제작하면서 내용확인하기 (오타있으니 주의하기)

1016_DHCP_DNS_WEB응용.pkt
0.09MB

 

 

 

◆ 라우터 보안 (Access List)

 - 방화벽(Access Control List) : 특정 네트워크의 접근여부를 허용 할지 말지를 결정하는 리스트 (필터링)

 - 라우터에서 설정한다고 하여 L3까지가 아닌 응용계층 일부분까지 관리

 - 완벽하게 막을 수 없기 때문에 전문 방화벽 장비 사용

 - ACL은 크게 numbered 와 named 로 구분되며, 각각 standard 와 extended 가 있다

   ㄴ Standard 표준 ACL    1 ~ 99      출발지 IP

       Extended 확장 ACL  100 ~ 199  출발지, 목적지, 프로토콜, 포트번호

 

 ◇ ACL 기본 규칙

  ① ACL은 맨 윗줄부터 아래로 순차적으로 수행되며, 그렇기에 좁은 범위 설정을 먼저 해야 한다

   ㄴ좁은범위설정을 하지 않으면 모든 패킷이 허용됨 = 전혀 필터링 되지 않음

  R(config)# access-list 1 permit any                              // 1번인 acl을 만들고 모든범위를 통과시킨다

  R(config)# access-list 1 deny 125.101.2.0 0.0.0.255   // 해당 네트워크 주소(와일드카드 마스크)는 거부하겠다

   ㄴ이런경우 먼저 통과되었기 때문에 적용되지 않는다

 

  ② 맨 마지막 행(줄) 에는 deny any 가 생략된다

  R(config)# access-list 2 deny 125.101.2.0 0.0.0.255   //

 

  ③ 순서대로 입력되고 수행되기 때문에 중간 삽입, 수정, 삭제도 불가능하기에 

      바로 명령을 수행하는 것이 아니라 별도의 텍스트로 작성 후 검증을 해야한다 ☆

 

  ④ ACL은 해당하는 인터페이스에 ACL이 정의되어야 한다

 

  ⑤ Inbound / Outbound

  R(config)# access-list <list 숫자> {permit | deny} {<출발지주소> <와일드카드마스크> | any}

  R(config-if)# ip access-group <list 숫자> <in | out>                          // 해당 네트워크 주소가 전송될 인터페이스

 

  ★반드시 ACL은 목적지 라우터에서 설정해야 한다.

 

 문제) 출발지가 210.100.8.0 /24 인 패킷이 라우터에 들어오지 못하게 설정하시오

  R(config)# access-list 1 deny 210.100.8.0 0.0.0.255 

  R(config)# access-list 1 permit any

  R(config-if)# ip access-group 1 in             // int s0/0

 

 문제) 출발지가 190.150.82.0 /24 인 패킷만 라우터에 들어올 수 있게 설정하시오

  R(config)# access-list 12 permit 190.150.82.0 0.0.0.255

  R(config-if)# ip access-group 12 in             // int s0/0

 

 문제) 출발지가 51.100.92.8 /32 인 패킷이 외부로 나가지 못하게 설정하시오

  R(config)# access-list 7 deny 51.100.92.8 0.0.0.0

  R(config)# access-list 7 permit any

  R(config-if)# ip access-group 7 out             // int s0/0

 

[ACL 기초 연습]

 

[연습2]

1016_ACL 연습1.pkt
0.07MB

ip 설정은 기본

728x90