윈도우즈 서버(Windows Server)

Windows서버는 Linux(Server)와 동일하게 조직의 도메인 구성 및 다양한 서비스(FTP, HTTP, DNS ...)를

위해 사용되는 운영체제로 우리가 일반적으로 사용하는 Windows Home / Pro 와 UI가

비슷할 수는 있어도 내재 되어있는 구성과 기능들은 다른 점이 많다.

 

Windows서버의 핵심 기능으로는 IIS(Internet Information System), AD(Active Directory) 등이 있으며

수업이 진행중인 상태이므로 차차 풀어나가보도록 하겠다.

 

Windows서버도 리눅스와 유사하게 CLI 기반 시스템 구동이 가능하다.

이를 Server Core라고 칭하며, 그래픽 없이 서버의 핵심 기능만으로 운영하는 방식이다.

리소스 사용률이 적으며 보안이 좋다는 장점이 존재한다.

 

Linux와 비교했을 때 Windows서버만의 장점으로는,

 

- 모든 도메인 내의 노드들에 적용되는 GPO(Group Policy Object)

(그룹 정책 관리)

 

- 여러 개의 Domain 구축 시 확장성과 연계성이 편리함

(Domain 간 Trust 관계를 갖음)

 

두 가지를 대표적으로 꼽아볼 수 있다.

 

특히 시스템 관리자의 입장에서 GPO의 경우 Domain에 속한 

구성원들에 대해서 중앙 집중식 관리를 통해, 일관된 정책 사항들을 반영할 수 있다는 점이 가장 큰 장점이다.

ex) 1(관리자) : N(구성원) 의 관리를 한 번의 작업으로 가능하게 하는 것

 

* 실습환경 : Intel i7-1260P(AMD64)

** 네트워크 대역 : 192.168.100.0/24

*** 해당 실습에서 사용된 이미지파일 버전 : Windows Server 2008 x64

 

● VMWare를 사용하여 가상머신(Windows Server)를 생성

Windows Server 2008의 리소스 구성

위의 그림과 같이 가상머신의 리소스를 구성했다.

* Hyper-V가 요구되는 작업 시에는 Processors의 옵션에서 가상화 허용을 체크해줘야함

 

 

Windows Server 2008

원활한 실습을 위해 '네트워크 및 공유센터'에서 공유에 관련된 권한을 위의 그림과 같이 설정

 

 

Windows Server 2008

Windows Server의 핵심이라고 할 수 있는 부분이다.

리눅스와 달리 윈도우 레지스트리 편집기와 동일하게 정책반영 시,

그래픽이 주가 되기 때문에 자주 사용되는 도구의 위치는 미리 알고 있는 게 도움이 될 수 있다.

 

 

Windows Server 2008

시작 버튼 → 서버 관리자 → IE ESC(Internet Explorer Enhanced Security Configuration) 구성 선택 시

위의 그림과 같은 설정화면이 출력되는데, 이는 일반적인 윈도우 클라이언트(Home/Pro) 버전이 아니기 때문에

Default는 웹 기반 콘텐츠에 관한 제재가 설정이 되어져 있다. 

(해당 옵션 활성 시 외부로 연결되는 웹 사이트 접속 시에 실습을 위해 해제함 본래에는 사용 해야함)

 

 

● '로컬 그룹 정책'의 역할 확인을 위한 실습

Windows Server 2008

테스트를 위해 만들어 본 'jerry'라는 이름의 유저

해당 작업은 GUI 환경에서도 수행 가능하지만

임시 사용자를 생성할 때에는 명령 프롬프트가 간결하고 빠르다.

 

 

 

Windows서버(2008)에서는 사용자 계정 추가를 위해

컴퓨터 관리를 사용하며 새로운 계정 추가 시 위의 그림처럼

'다음 로그온할 때 반드시 암호 변경'옵션이 기본값으로 체크 되어있는 것을 확인할 수 있다.

 

 

Window Server 2008

위의 과정과 동일하게 유저 생성 시 초기 로그온 화면에서 

암호를 바꾸어야 한다는 경고문을 확인할 수 있다.

 

이후 로그온 진행 시 기존 패스워드와 변경할 패스워드를 입력하여 

정상적으로 시스템에 로그온 할 수 있다.

 

 

● '최소 암호 길이' 정책 실습

Windows Server 2008

기본 값으로 설정된 Windows서버에서 새로운 계정 추가 시,

패스워드를 지정할 때 별도의 제한이 없어서 '1234', '1', 'password' ... 등의

예측하기 쉬운 문자(Easy-Passphrase)로의 설정이 가능했었다.

이 부분도 역시 로컬 보안 정책을 통하여 일괄적으로 규제를 걸어줄 수 있다.

(위 그림의 경우 최소 암호 길이를 기존 '0'에서 '5'로 변경 후 저장함)

 

 

Windows Server

위의 그림에 해당하는 정책 설정은 로그온 과정에서 N회 이상 틀린 값을 대입하였을 때

일정 시간동안 해당 계정을 잠금상태(Lock)로 전환시키는 옵션으로,

Linux 시스템에서의 Fail2ban과 유사한 동작을 수행하는 정책 설정이다.

 

 

Windows Server 2008

앞에서 설정된 내용을 기반으로하여 어떤 식으로 동작하기 위해서

설정된 정책에 위배되는 동작을 수행하였음

 

위 사진은 '암호 정책'에서 암호의 최소 문자 길이를 5문자로 설정한 뒤,

1자리수의 문자만으로 비밀번호 생성을 시도 하였을 때 나타나는 경고문

 

 

Window Server 2008

위의 사진은 '계정 잠금 정책'에서 설정 되었던 내용으로 

로그온 시 3회 이상 특정 유저에 대한 패스워드 입력값이 틀렸으므로

앞에서 설정한 시간인 1분 동안 계정이 '잠금 상태'로 전환된 것을 확인할 수 있다.

'Windows_System' 카테고리의 다른 글

[Windows]Password_Reset_Disk  (0) 2023.03.02
[Windows]Windows_Remote_Desktop  (0) 2023.02.28

DHCP(Dynamic Host Configuration Protocol)

DHCP란 호스트들의 IP, Gataway, DNS 서버를 자동으로 할당해주는 프로토콜로,
과거 BootP(디스크가 없는 컴퓨터에게 IP 주소 및 구성정보를 자동으로 설정)의 상위버전으로 볼 수 있다.

LAN 구성도

위의 그림과 같이 조직 내부에서 지정된 범위의 IP를 자동으로 할당해주는 서버를
리눅스로 구성해보겠다.

* 실습환경 : Intel i7-1260P(AMD64)
** 네트워크 대역 : 192.168.100.0/24
*** 해당 실습에서 사용된 가상 머신 : Ubunser20.04(.145), CentOS7
(.DHCP), Windows7(.DHCP)

● DHCP 서버 구축

VMWare Edit Tab -> Virtual Network Editor

현재 실습환경은 물리적인 노드가 아닌 VMWare 안의 가상머신으로 진행되기 때문에
VMWare 메인 네트워크 어댑터를 통한 자동 IP할당 옵션을 체크해제

# DHCP 서버 구축을 위해 필요한 패키지 설치(Ubuntu Server 20.04 기준 패키지)
sudo apt install -y isc-dhcp-server

# Default 설정파일을 백업
sudo cp -arp /etc/dhcpd.conf /etc/dhcpd.conf.bak


# dhcpd.conf 파일을 수정하여 설정사항을 저장
sudo vim /etc/dhcpd.conf

[파일내용]
# A slightly different configuration for an internal subnet.
subnet 192.168.100.0 netmask 255.255.255.0 {
  range 192.168.100.210 192.168.100.215;
  option domain-name-servers 192.168.100.2;
  option domain-name "ditto.com"
  option subnet-mask 255.255.255.0;
  option routers 192.168.100.2;
  option broadcast-address 192. 168.100.255;
  default-lease-time 600;
  max-lease-time 7200;
}

# DHCP 할당 시켜줄 네트워크 대역을 정의 192.168.100.0/24
# DHCP 할당 시켜줄 네트워크의 범위를 설정 .210 ~ .215까지 할당
# DNS를 설정 192.168.100.2(Default)
# Domain Name을 설정 "ditto.com"
# 기본 대여 시간 600초, 최대 대여 시간 7200초로 설정됨


sudo iptables -I INPUT 1 -p udp -m state --state NEW --dport 67 -j ACCEPT

DHCP의 포트 번호로는 서버(67번) / 클라이언트(68번)을 사용하며
클라이언트가 IP 할당을 위해 요청을 할 수 있게끔 67번 포트를 활성화해준다.

iptables를 이용하여 INPUT 체인에 67번 포트에 관한 룰을 추가해준다.
(sudo ufw allow ~ 를 이용하여 대체할 수 있음)

sudo /etc/init.d/isc-dhcp-server start

해당 명령어를 이용하여 서비스 시작 또는 재시작이 가능하며,
보편적으로 systemctl [Option] [Service] 를 이용하여 서비스를 시작해준다.

▼ CentOS7(DHCP 클라이언트)

# 기존 Static(정적)으로 설정 되어있던 CentOS7의 네트워크 설정파일을 수정
sudo vim /etc/sysconfig/network-scripts/ifcfg-ens33

[파일 내용]
TYPE="Ethernet"
PROXY METHOD="none"
BROUISER ONLS="no
BOOTPROTO="dhcp"			# BOOTPROTO = "dhcp" 설정
DEFROUTE "yes"
IPU4_FAILURE_FATAL = "no"
IPUGINIT-"yes"
IPU6 _AUTOCONF="yes"
IPV6 _DEFROUTE-"Jes"
IPUG FAILURE FATAL= "no"
IPU6_ADDR_GEN _MODE-"stable-privacy"
NAME-"ens33"
UUID="3c9ae2f6-bf1a-469a-8217-ca99bce784ff"
DEUICE="ens33"
ONBOOT-"ues"
#IPADDR="192.168.100.160"
#PREFTX=124*
#GATEWAY="'192.168.100.2"
#ONS1="192.168.100.2"
10052=44192.168. 190 :7.
#DNS3="8.8.8.8"				# 기존에 정적으로 설정되었던 부분은 주석처리

CentOS7

CentOS7

설정파일 수정 및 저장 후,
"sudo ifdown ens33 && sudo ifup ens33"
명령으로 네트워크 카드를 재시작해보면
DHCP 범위의 첫 번째 주소인 .210 으로 할당된 것을 확인해볼 수 있다.


▼ Windows 7(DHCP 클라이언트)

Windows 7

윈도우 탭 -> 네트워크 -> 네트워크 속성(R) 탭을 클릭하여
수동으로 지정 되어있던 IP 설정을 자동으로 변경해준다.

Windows 7

설정을 마친 후 윈도우 명령 프롬프트에서 "ipconfig" 로 네트워크 정보 확인 시
DHCP 할당 범위에 속하는 ~.211로 IP가 설정된 것을 확인할 수 있다.

▼ Ubunser(DHCP 서버)

sudo dhcp-lease-list

해당 명령어로 현재 IP주소를 부여받은 노드들의 정보를 확인해볼 수 있다.




'Linux_System' 카테고리의 다른 글

[Linux]Log_Server  (0) 2023.02.10
[Linux]Squid(Proxy_Server)  (0) 2023.02.09
[Linux]Ansible  (0) 2023.02.04
[Linux]YUM_Priority  (0) 2023.01.18
[Linux]ZFS  (0) 2023.01.16

HTTPS(Hyper Text Tranfer Protocol Secure)

네트워크 서비스(웹 사이트, 금융, 공인인증서 ...)를 안전하게 이용할 수 있게 해주는 역할을 하는 방식으로
대부분 네트워크 패킷 전송에 사용되는 TCP 프로토콜에 많은 보안기법을 제공하여 데이터 송수신 시 보안을 향상시켜준다.

TLS(Transport Layer Security)와 SSL(Secure Socket Layer)가 가장 대표적으로 알려져있는데,
SSL의 취약점을 보완되어 보다 안정성이 좋은 버전이 TLS 이다.

평소에 누구나 웹 브라우저(Chrome, Firefox, Whale ...)를 사용한다면 쉽게 접해볼 수 있는 HTTPS와 HTTP의 차이점을 확인

* 해당 실습에서는 Fedora36(10.211.55.20)이 이용되었음


▼ 보안 인증서(*.crt)관련 참고자료

[Security]Digital_Certificate

디지털 인증서(Digital Certifiate) 우리가 웹 사이트나 모바일 뱅킹 등의 서비스를 이용할 때 안전하게 사용할 수 있는 이유로는 TLS(Transport Layer Security) 방식으로 서버와 노드간 주고받는 내용을 암

for-security.tistory.com


● HTTP와 HTTPS

# 웹 사이트 실습을 위한 준비

sudo dnf install -y httpd 
# 로컬 웹 사이트를 활성화하기 위한 httpd 패키지를 다운로드

echo "<h1>This is HTTPS Test Web Site</h1>" > /var/www/html/index.html
# 관리자 권한으로 간단하게 HTML 작성 후 해당 경로로 리다이렉트하여 웹 페이지 생성
# 에디터로 직접 수정해주어도 상관 X

sudo systemctl start firewalld
# 방화벽 설정을 위한 firewalld 서비스 시작

firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firweall-cmd --reload
firewall-cmd --list-service
# 로컬 및 외부에서 Fedora(.20)머신의 웹 페이지 접근을 허용하기 위한 방화벽 설정

sudo systemctl restart httpd
# 설정사항 적용을 위하여 서비스를 재시작



먼저 "firefox http://www.google.com"을 일반 사용자의 콘솔창에 입력하여 Google 사이트로 접속

firefox http://www.google.com

일반 사용자 콘솔에서 해당 명령어로 Google 사이트에 접속하면 정상적으로 진입되는 것을 확인
TLS 방식을 사용한 접속이기에 빨간색 네모칸 안에 있는 자물쇠로 해당 사이트에 대한
인증서를 확인해볼 수 있다.

* 'http'로 입력을 요청했지만 접속 시 'https' 로 강제 리다이렉트 되는 것은 ssl.conf 등의 설정으로 인한 이유이다.
해당 내용에 대해서는 추후 기술

자물쇠 버튼 클릭 후 인증서에 대한 내용을 확인

Firefox의 Certificate Manager로 인증서의 정보를 자세히 확인

'Google' 사에서 불특정 다수 이용자의 원활한 접속을 위해서
Firefox 웹 브라우저에 ~.crt(인증서)를 생성하여 클라이언트의 웹 브라우저에 넣어 둔 것인데,
클라이언트와 서버는 대칭키 방식으로 통신 간 데이터를 암호화하고, 공개키로 복호화 한다.

이 방식은 SSH에서 개인 키(Private Key)와 공개 키(Public Key)로
클라이언트와 서버 간 인증을 해주는 원리와 비슷하다.

이번에는 앞에서 미리 만들어 둔 로컬(인증서가 없는) 웹 페이지에 대한 접속방식을 확인해본다.

# 로컬에서 생성한 웹 페이지를 IP가 아닌 FQDN으로 접속하기 위한 /etc/hosts 파일을 수정

sudo vim /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
10.211.55.20    www.myhomepage.com www # 해당 부분을 추가함

# Name Resolving 시 가장 먼저 로컬에 정의된 /etc/hosts 파일을 참조하기 때문에
# URL 검색 창에 "www.myhomepage.com" 입력 시 앞에서 생성한 웹 페이지로 접근한다.



▼ Name Resolve 관련 참고자료

[Linux]DNS

DNS(Domain Name System) 우리가 흔히 구글링을 하러 구글 웹 사이트에 접속할 때, 123.123.123.123 ... 식의 ip주소를 입력해 웹 사이트에 접근하는 경우는 거의 없다. 이렇듯 복잡한 ip주소 대신 사람이 이용

for-security.tistory.com




"firefox http://www.myhomepage.com"을 일반 사용자의 콘솔창에 입력하여 로컬 웹 페이지로 접속

HTTP로 로컬 웹 페이지에 접속한 모습

해당 그림에서도 볼 수 있듯이 인증서가 없는 HTTP(Plain Text) 웹 페이지로
자물쇠 아이콘에 빨간색 사선이 표시되어 웹 사이트에 대한 인증서 정보가 웹 브라우저에 없다는 것을 확인해볼 수 있다.


이어서 "firefox https://www.myhomepage.com" 을 일반 사용자 콘솔에서 입력하여 웹 페이지 요청을 시도

HTTPS 접속을 시도한 모습

웹 브라우저에 인증서가 저장 되어있지 않은 웹 사이트에 HTTPS 접속 요청 시
해당 그림처럼 연결 불가(Unable to Connect)라는 경고문을 확인해볼 수 있다.

* Firefox 및 그 외 브라우저의 버전별로 경고문의 출력내용이 상이할 수 있음

다른 버전의 Firefox에서 동일한 조건으로 웹 페이지 요청을 시도

해당 버전의 웹 브라우저에서는 인증서 정보가 없는 웹 페이지에 대한 HTTPS 접근 요청 시
보안 연결 실패(Secure Connection Failed)라는 경고문이 출력되는 것을 확인해볼 수 있다.



---> 다음 포스트에서는 디지털 인증서(Digital Certificate) 생성 및 사용에 대한 포스트 진행

'System_Security' 카테고리의 다른 글

[Security]Digital_Certificate  (0) 2023.02.12
[Security]TrueCrypt  (0) 2023.02.02
[Security]SSH_Keygen  (0) 2023.02.01
[Security]chroot  (0) 2023.01.27
[Security]Snort  (0) 2023.01.26

Snort(Network Intrusion Prevention / Detection System)

Snort는 침입감지를 수행하는 IDS의 역할을 주로하지만, IPS의 역할을 동시에 수행하여

외부로부터의 침입여부를 빠르게 알려준다.

 

Snort는 Sniffer mode, Logger mode, IDS/IPS mode 세 가지 모드로 작동될 수 있는데,

Snort가 제대로 작동되려면 AV에서의 악성코드에 대한 데이터베이스가 있어야 하듯이

유효한 침투에 대한 rule set가 필요한데, 이러한 정보들은 /etc/snort/rules에 저장 및 새롭게 생성이 가능하다.

 

- 스니퍼 모드(Sniffer Mode) : 네트워크 패킷을 읽고 콘솔에 출력

- 패킷 로거 모드(Packet Logger Mode) : 패킷을 디스크에 기록

- 침입 탐지 모드(Intrusion Detection) : 네트워크 트래픽 모니터링, rule.conf를 참조하여 violation 판단 및 동작 수행

 

* VMWare 네트워크 : 192.168.100.0/24

** 사용된 가상 호스트 : Ubuntu(.130), BackTrack(.135), metasploitable(.136)

 

해당 실습은 snort 패키지가 사전에 설치되어 있는 BackTrack 머신에서 진행하였음

패키지 설치 시 apt, yum(epel-release) 패키지 관리자로 snort 다운로드 가능

 

 

● Sniffer Mode 실습

root@bt:~# ifconfig eth0 promisc
# eth0 네트워크 카드를 PROMISC 모드로 전환

root@bt:~# ifconfig
# 변경사항 확인

 

Promiscuous Mode(eth0)

BackTrack(.135) 머신은 모니터링을 담당할 머신이기에

모든 패킷을 수신 가능하게 만들어주는 PROMISC 모드로 전환

 

 

cp -arp /etc/modsecurity/modsecurity.conf-recommended /etc/modsecurity/modsecurity.conf
# 해당 명령어로 recommended 구성파일을 .conf 파일로 복사해준다.

 

vim /etc/snort/snort.conf

해당 첨부 사진에는 표기되지 않았지만, 53번째 줄을 주석처리 한 후,

54번째 줄에 "var EXTERNAL NET !$HOME_NET(192.168.100.0/24가 아닌 네트워크를 의미)"를 추가한다.

이번 실습에서는 실질적으로 사용되지 않는 설정 내용이지만, 추후 외부(External) 네트워크와의 실습 진행 시 필요한 부분이다.

 

 

vim /etc/snort/snort.conf

해당 설정파일의 하단부분을 확인해보면 참조 될 *.rules 파일이 지정 되어 있는 것을 볼 수 있다. 

줄을 한 칸 추가하여 "include $RULE_PATH/ssh.rules" 를 추가해준다.

 

 

vim /etc/snort/rules/ssh.rules

 

alert tcp any any -> $HOME_NET 22 (msg:"SSH Login Detected"; sid:000001;)

# snort.conf에 추가해준 새로운 *.rules을 생성하는 과정이다.
# any(0.0.0.0) any(0.0.0.0)에서 SSH를 요청하는 트래픽 발생 시 "SSH Login Detected"라는 
# 경고문을 출력해주는 역할의 구문이다.

 

/etc/init.d/snort restart

해당 명령어로 snort를 재시작 시켜준다.

 

snort -q -A console -i eth0 -c /etc/snort/snort.conf

• -q : 패킷을  잡아냄

• -A : 경고를 콘솔로 출력해냄

• -i : 인터페이스를 지정

• -c : 적용시킬 롤 파일

 

첨부사진과 내용은 다르지만, snort 설정을 완료한 후, 다른 가상 머신에서 ubuntu(.130)머신으로 ssh 연결 요청 시

위의 명령어로 모니터링을 시작하게 되면 아래의 사진과 동일한 형식으로

Source[n] -> Destination[22] 간의 패킷을 출력해주는 것을 확인할 수 있다.

위의 사진은 ICMP 룰을 설정한 후 해당 패킷이 감지됐을 때 출력해주는 알림(Alert)

 

 

● snort로 nmap을 이용한 포트스캔 감지

nmap -v -A 192.168.100.130

metasploitable(.136) 머신에서 ubuntu(.130) 머신을 타겟으로 포트스캔을 시도

 

 

snort -q -A console -i eth0 -c /etc/snort/snort.conf

이 외에도 다양한 룰을 추가 및 활성화하여 침입감지가 가능하며,

추후에는 snort를 이용한 침입감지 후 조치를 알아보도록 하겠다.

'System_Security' 카테고리의 다른 글

[Security]Digital_Certificate  (0) 2023.02.12
[Security]TrueCrypt  (0) 2023.02.02
[Security]SSH_Keygen  (0) 2023.02.01
[Security]HTTPS  (0) 2023.01.31
[Security]chroot  (0) 2023.01.27

MAC 주소 기반의 포트 보안(Port-Security)

2계층에서 동작하는 스위치에서 주로 사용되는 기법으로,
스위치가 가지고 있는 MAC Table을 참조하여 프레임을 통제하는 기술을 말한다.

예시로 여러 개의 포트를 가지고 있는 스위치가 있을 때,
각각의 포트마다 인가된 MAC주소의 장치들만 스위치에 연결되어 통신이 가능하게끔 설정하거나

MAC 주소 학습한도(Maiximum)를 지정하고, 지정된 개수보다 학습된 MAC 주소가 많아지면
해당 설정이 적용된 포트가 차단 되도록 하는 설정이 가능하다.

MAC 테이블을 위조된 MAC 주소로 가득 채워, 제 기능을 못 하게 만드는
Swtich Jamming 으로 인한 Sniffing 등의 공격을 방지해줄 수 있는 중요한 보안 기능이다.

 

* Port-Security는 Access, Trunk, Tunnel 포트에서만 설정이 가능하다.

** 실습 시 STP가 적용된 경우 스위치의 기본 동작이 "Blocking -> Listening -> Learning -> Forwarding" 인 점을 감안하여 실습을 진행
*** 수렴시간(Default=300Sec)으로 인해 연결 후 일정시간이 지나게되면 상태 확인이 가능해진다

 

● Port Security의 MAC 주소 학습 방식

Command help(?) 입력 시 출력되는 보기

Port Security에서 MAC 주소를 학습하는 방식으로는 총 세 가지가 있다.

- Static(정적-저장) : 위의 실습처럼 장치의 MAC 주소를 수동으로 직접 지정하여 NVRAM에 저장(재부팅 시에도 정보가 저장되어 있음)

- Dynamic(동적-임시) : MAC Table에 첫 번째로 학습되는 MAC 주소를 자동으로 지정(RAM에 저장되어, 재부팅 시 정보가 소멸)

- Sticky(동적-저장) : 동적으로 MAC 주소를 학습하여, Sticky로 학습된 MAC 주소를 NVRAM에 자동으로 저장

 

● 조건 위반 시 대응 정책(Violaiton)

Command help(?)로 세 가지 정책을 확인

인가되지 않은 MAC 주소 혹은 초과되는 MAC 주소가 감지됐을 때,
수행하는 행위에 대한 세 가지 설정이 존재한다.

- Protect : 위반한 장비에 대해서만 통신이 차단되며, 나머지 설정들은 유지

- Restrict : Protect의 기능에서 log message를 출력해주는 기능을 의미

- Shutdown : 포트 자체를 비활성화 시키는 기능

 

 

● MAC 주소 학습한도 기반

Node 1, Node 2에서 Ser 1으로 통신하기 위해 무조건 거쳐야만 하는

실습을 진행할 가상의 LAN


SW 2의 Fa0/1 포트에 Port Security를 적용하여 1개를 초과하는
MAC 주소 학습 시 포트를 다운 시키는 정책을 설정한 후,
각각의 노드에서 Ser 1을 향해 ping을 보내본다.

 

SW1(config)#int fa0/1
SW1(config-if)#switchport mode access
SW1(config-if)#switchport port-security
SW1(config-if)#switchport port-security maximum 1
SW1(config-if)#switchport port-security violation shutdown
SW1(config-if)#end

SW 2의 설정내용

Violation을 "shutdown" 으로 설정

SW 2의 Fa0/1 인터페이스에 Port Security 적용 후
Node 1과 Node 2에서 Ser 1에 대한 ping을 보내게 되면,
첫 번째 ping에 대해서는 문제 없이 송수신이 가능하지만
두 번째 ping 프레임은 SW 2의 Fa0/1 인터페이스에 이르기 전에
회선이 shutdown 상태로 전환되는 것을 확인해 볼 수 있다.

 

● 인가된 MAC 주소 기반

실습을 진행할 가상의 LAN

SW 1의 Fa0/1 포트에 현재 연결되어 있는 Node 1이 아닌
다른 장치의 MAC 주소가 인식되는 경우에 해당 포트를 Shutdown 시키는 정책을 설정

 

SW1(config)#int fa0/1
SW1(config-if)#switchport mode access
SW1(config-if)#switchport port port-security
SW1(config-if)#switchport port-security mac-address 0060.3ED2.4861
SW1(config-if)#switchport port-security violation shutdown
SW1(config-if)#end

▲ SW 1의 설정내용

Fa0/1 포트에 인가되지 않은 MAC을 가진 "Hacker" 노드를 연결

새로운 노드를 추가하여 다른 노드들과의 통신 요청 시,
즉시 회선이 Shutdown 상태로 전환되는 것을 확인해볼 수 있다.

 

 

인가된 MAC 주소의 머신 재연결

Rule Violation으로 인해서 차단 되었던 이력이 있는 경우

재연결 시에 Shutdown 상태인 포트를 재시작(no shutdown) 해줘야 정상적으로 가동된다.

'Network' 카테고리의 다른 글

[Network]Static_Route  (0) 2023.02.20
[Network]Router_02  (0) 2022.11.22
[Network]Router_01  (0) 2022.11.21
[Network]VLAN  (0) 2022.11.16
[Network]STP_Algorithm  (0) 2022.11.11

라우터(Router)

저번 포스트에서는 라우터의 부팅 및 기본정보에 관한 부분을 다뤄보았다.

이번에는 기본적인 환경설정과 라우팅 작업 시 주로 사용되는 명령어 등을 알아보자

 

 

● 장치명 설정

초기 부팅 시 라우터는 "Router", 스위치는 "Swtich"라는 동일한 이름을 가지고 있기 때문에,

라우터 및 스위치를 관리함에 있어 모든 장치의 이름이 동일하다면

장치를 구별하는데 어려움이 발생할 수 있다.

 

이를 위해서 장치의 이름을 임의적으로 설정할 수 있도록 해주는

명령어 "hostname" 존재한다, 장치명 변경은 전역 설정모드에서 가능하다.

 

기존 "Router"에서 "Cisco_RT"로 장치명을 변경

** 영문(대/소문자), 숫자, 기호가 사용 가능하며 공백은 사용이 불가(63자 까지 설정가능)

 

 

● DNS Lookup

라우터의 CLI 콘솔 창에서 명령어를 잘못 입력(오타)했을 때,

라우터 자체적으로 해결할 수 없는 명령어인 경우 IOS가 DNS 서버를 찾아 해결(Solve)을 시도한다.

이 때 소요되는 시간이 1분 정도로 꽤 오랫동안 소요될 수 있는데,

"no ip domain lookup" 명령어를 이용하여, "오타는 오타로 여길뿐 검색은 해결은 필요없다"에 해당하는 설정을 해줄 수 있다.

 

DNS Lookup을 해제
DNS Lookup 실행화면

만일 위의 그림과 같이 오타 해결을 진행중이라면,

"Ctrl + Shift + 6"을 순서대로 입력하여 강제종료가 가능하다.

 

 

● 암호 설정

스위치/라우터 인증되지 않은 사용자의 접근을 차단하기 위해서 사용되며

라우터 접속부터 모드별 설정, 원격접속에 관한 암호를 설정해줄 수 있다.

 

- Console Password : 사용자 모드에 관한 암호 설정(라우터 접속과 동시에 이뤄짐)

 

- Enable Password : 사용자 모드에서 관리자 모드로 전환 시 요구되는 암호를 설정(평문)

 

- Enable Secret : 사용자 모드에서 관리자 모드로 전환 시 요구되는 암호로, "Enable Password"보다 우선적으로 적용(암호화)

ex) Enable Password = hello / Enable Secret = Korea 일 때, "Korea"를 입력해야 모드 전환이 가능하다.

 

- VTY(Virtual Teletype) Password : 텔넷/SSH 접속 시 사용되는 암호 설정(텔넷은 보안상의 이유로 거의 사용X)

 

 

"Console Password"설정

 

"Console Password" 설정하고 라우터 종료 후, 재접속 시도 시 암호를 요구하는 것을 확인

 

"Enable Password와 Secret"을 동시에 설정

 

암호화 처리되어 보이지는 않지만, "korea"를 입력하여 모드를 전환했음을 확인

 

 

● 설정내용 관련

작업자가 스위치/라우터에서 작업(라우팅 설정, 정책 설정 .. 등)을 하게되면

해당 작업내용은 RAM에 저장되는데, 해당 기억장치는 휘발성(Volatile) 기억장치로

전원이 내려가게 되면 작업내용도 전부 소실된다.

다음 부팅 시 사용하지 않을 설정내용이라면 저장하지 않아도 상관 없지만,

추후에도 사용할 예정이라면 NVRAM(Non-Volatile)에 작업정보를 저장해야한다.

 

작업 내용을 NVRAM에 저장해주는 명령어로는,

"copy running-config startup-config""write memory" 두 가지가 존재한다.

(각각 "copy run start"와 "wr"로 축약하여 사용이 가능)

 

RAM에 있는 작업 내용을 NVRAM에 저장시키는 과정 Enter를 입력하여 넘어갈 수 있다.

 

NVRAM에 저장된 설정내용을 확인

"show startup-config" 명령어를 통해서 NVRAM에 저장된 설정내용을 확인할 수 있고,

"erase startup-config" 명령어를 이용하여 기존에 저장되어 있는 설정내용을 삭제할 수도 있다.

(관리자 모드 이상에서는 명령어 앞쪽에 'do'를 붙여서 명령어 수행이 가능) 

 

RMA에서 작업한 설정내용을 확인

위에서 보았던 "show startup-config"와 전체적인 내용을 보면 

크게 다른점은 느낄 수 없지만, 실제 작업을 한 후에 본다면 차이점을 확연히 알 수 있다.

해당 명령어는 NVRAM에 저장되어 있는 내용을 출력해주는 것으로,

 

"show running-config"의 경우 현재 작업된(혹은 진행) RAM 상에 존재하는 

설정 내용들을 출력해주는 역할을 한다.

("sh run"으로 축약하여 사용이 가능)

'Network' 카테고리의 다른 글

[Network]Static_Route  (0) 2023.02.20
[Network]Port_Security  (0) 2022.11.25
[Network]Router_01  (0) 2022.11.21
[Network]VLAN  (0) 2022.11.16
[Network]STP_Algorithm  (0) 2022.11.11

라우터(Router)

라우터의 대표적인 역할과 특징으로는 상대방에 이르는 경로를 찾아주며
다른 네트워크(VLAN, Subnet 등)를 묶어주는 역할을 한다.

2계층 장비인 스위치와는 달리 브로드캐스트를 통과시키지 않음으로써
브로드캐스트 도메인을 나누어준다는 것이 있고, 상대 노드로 통신하기 위한 경로를
계산하여 데이터를 이동시킨다는 것에 있어서 속도가 빠르지는 않다는 점이 존재한다.

● 라우터의 구조와 부팅순서

라우터에 전원을 올리고 실행하게 되면 POST(Power On Self Test)를 실행하여 장치의 이상 유무를 확인하고
ROM(Read-Only Memory)에 있는 부트스트랩 코드(Bootstrap Code)를 실행시켜 Flash Memory에 있는
IOS(Internetwork Operating System)NVRAM(Non-Volatile RAM)에 있는 설정파일
RAM(Random Access Memory)에 복사하여 라우터를 실행시키게 된다.

NVRAM과 Flash Memory는 비휘발성 기억장치로, 전원이 공급되지 않아도 데이터를 잃지 않는다.

▼ 정리
- ROM : Bootstarp Code(Bootloader), Restore Tools(시스템 복구 : 안전모드)
- Flash Memory : IOS(Internetwork Operating System)
- NVRAM : 설정파일(startup-config)

► 전원 On → POST 실행(장치 이상유무 확인) → 부트 스트랩 코드 실행 → IOS, 설정 파일을 RAM에 올려 라우터를 실행

● IOS의 세 가지 버전

- Base 버전 : 라우터 실행에 필요한 기본기능만 갖춘 것
- Plus 버전 : IBM 메인프레임과 연결하는 기능 등 추가기능을 가지고 있는 것
- Encryption 버전 : 40비트 혹은 56비트 암호화 기능을 가지고 있는 것(56비트 암호화는 미국 외에서 구매불가)

● 라우터와 PC를 연결

라우터에 직접 연결 시, 콘솔 케이블로 라우터와 컴퓨터를 연결하고
PC에서 시작 → 보조 프로그램 → 통신 → 하이퍼터미널 or 터미널 프로그램 순으로
수작업으로 설정을 진행하여 연결이 가능하며, 


Windows7 부터는 putty, XShell 등으로 Serial(COM) 연결을 진행할 수도 있다.

COM Port는 COMumunication Port를 의미하며 COM1-COM3 / COM2-COM4로, 네 개의 가상포트를 가지고 있다.

** 장치 관리자에 진입하여 Port Number를 확인할 수 있다.

 

  

● 라우터 실행

IOS가 없거나 손상되었거나 비밀번호 분실 등으로 진입하는 rommon모드

** 본 그림은 예시를 위해 부팅화면에서 Ctrl+C(Break)를 사용하여 임의로 진입

IOS를 정상적으로 읽어들여 부팅되었을 때 볼 수 있는 화면

제조사, OS의 정보 및 소프트웨어 정보, 리소스의 정보들을 간략하게 출력해준다.

라우터를 처음 설정할 때 대화 모드로 설정할지를 묻는 문구

대부분 사용하지 않는다고 한다.(필요하지 않은 부분이 많기 때문)
"no"를 입력하면 RETURN 키를 눌러 라우터 설정을 시작라는 문구가 나온다.

 

 

● IOS CLI Mode

IOS CLI 모드를 나열

기본적으로 라우터에 처음 접속하게 되면 사용자 모드(User Mode)로 접속되는데,
해당 모드에서는 제한적인 명령어만 사용이 가능하므로 관리자 모드로
전환 해주어야 한다. 사용자 모드의 콘솔 창에 "enable"을 입력하면 전환이 가능하고,
("en"만 입력해도 명령어 인식이 가능하다 혹은 TAB키 사용)

관리자 모드(Privilege Mode)에서는 간단한 설정과 라우터 동작에 관한 설정 내용을 확인할 수 있다.
라우터의 직접적인 동작에 대한 설정은 전역 설정모드(Global Configure Mode)
진입하여 가능하므로  관리자 모드에서 "configure terminal"을 입력하여 해당모드로 전환이 가능하다.
("conf t"만으로도 명령어 인식 가능)


지역(Local)모드 "config-if"의 경우에는 FastEthernet 0/0에 대한 설정을 진행할 수 있는
인터페이스 설정 모드(Interface Configure Mode)로 가장 많이 사용되며
이 외에도 더 다양한 로컬 모드가 존재한다.

마지막으로 RXBoot 모드 "rommon 1>"는 ROM에 들어있으며 IOS를 업그레이드 하거나

관리자 암호를 재설정 및 복구 등을 수행할 때 사용되는 모드로써, 일종의 안전모드에서 IOS를 시작시킬 수 있는 모드이다. 

'Network' 카테고리의 다른 글

[Network]Port_Security  (0) 2022.11.25
[Network]Router_02  (0) 2022.11.22
[Network]VLAN  (0) 2022.11.16
[Network]STP_Algorithm  (0) 2022.11.11
[Network]FDDI  (0) 2022.11.11

VLAN(Virtual LAN)

라우터가 생성하는 LAN과 유사하게 스위치가 생성하는 LAN을 VLAN이라고 한다. 

스위치는 브리지와 마찬가지로 충돌 도메인을 각 포트별로 한정시켜서 포트별로 분리시킬 수는 있지만

브로드캐스트와 멀티캐스트는 여전히 통과시키게 된다. 따라서 스위치에 붙어있는 모든 노드들은

기본적으로 VLAN 1(Default)에 소속되어 있으므로 브로드캐스트를 수신하게 되는데,

 

별도의 가상 네트워크 VLAN 2를 생상하게 되면 그들만의 브로드캐스트가 생성되므로

기존 브로드캐스트(VLAN 1)에서 분리되어 브로드캐스트의 영역이 나뉘어져

네트워크의 효율을 증진시킬 수 있다.

 

하지만 VLAN을 나누게 되면 하나의 스위치 장비에 서로 다른 네트워크로

논리적 분할이 된 상태이므로 ex) VLAN 1과 VLAN 2는 유니 / 브로드캐스트 통신이 불가하게 된다.

그러므로 3계층 장비(라우터)가 필요하다.

 

 

● VLAN의 두 가지 종류

- 포트 기반(Port Based VLAN) : 스위치를 논리적으로 분할하여 스위치의 특정 포트에 VLAN을 할당하는 방식

 

- MAC 기반(MAC Based VLAN) : 스위치에 연결되는 단말의 MAC 주소를 기반으로 해당 포트를 VLAN으로 변경하는 방식

** 동적 VLAN(Dynamic VLAN)이라고 부르기도 한다.

 

 

● VLAN 1과 VLAN 2의 원활한 통신을 위한 작업

1. VLAN들을 묶어주는 VTP(VLAN Trunking Protocol) 설정

2. VLAN 1과 VLAN 2가 혼재하는 회선에 두 VLAN이 통과할 수 있게끔 구별하여 Trunk(or Tag Port) 설정

3. VLAN 1과 VLAN2가 구별될 수 있게 프레임에 캡슐화(802.1Q, ISL .. 등) 설정

4. 관리목적의 IPVLAN 1에 할당

5. 라우터 연결게이트웨이를 지정

 

 

● 트렁크 구간(Trunk)

예를 들어 5개의 VLAN이 설정된 2대의 스위치가 있을 때 

이 2대의 스위치가 상호 통신이 가능해야 한다고 가정하면 

회선이 총 5개가 있어야 할 것이다(논리적으로 브로드캐스트 도메인을 나누었기 때문)

이렇게 되면 스위치의 포트도 낭비가 될 것이고 비용또한 낭비가 될 것이다.

 

이런 문제를 해결하기 위해 사용되는 회선을 트렁크라고 하며,

트렁크 모드를 적용한 회선은 VLAN ID를 구분하지 않고 VLAN Frame을 전송할 수 있다.

* 굳이 VLAN 하나 당 하나의 통신회선을 마련하지 않아도 된다는 것

 

 

● VTP(VLAN Trunking Protocol)

VLAN Trunking Protocol에는 대표적으로

802.1q, Native VLAN, ISL(CISCO 전용 프로토콜), Native(Untagged) 등이 사용되며,

스위치가 여러 개 있을 때 어느 하나가 Server가 되고 나머지는 Client나 Transparent Mode가 되어

스위치끼리 VLAN의 생성과 삭제 및 수정 등을 동기화하여 편리하게 관리하는 프로토콜이다.

* VTP 설정 시, 반드시 Server Mode인 스위치가 존재해야 한다.

 

▼ VTP에서 작동되는 세 가지 작동방식(Mode)

- Server Mode : 다른 스위치에서 받은 VLAN 정보 등을 일치시켜 전파해주는 역할을 하며,

VLAN을 생성하거나 삭제가 가능

 

- Client Mode :  서버로부터 VLAN의 정보를 얻어와 동기화를 진행하며, VLAN의 생성과 삭제 권한이 없음

 

- Transparent Mode : 서버로부터 VLAN의 정보를 얻어오기는 하지만, 자신에게 속한 노드들의 변경 등은 외부에 알리지 않으며,

VLAN 생성과 삭제가 가능

 

 

 

● 실습

간단한 설정을 통해 VLAN의 작동방식을 확인

시나리오는 Node끼리 VLAN 1 소속, Server 끼리 VLAN 2 소속이며,

내부 세그먼트를  VLAN으로 분할 하였고 상호간의 각각의 VLAN을 위한 게이트웨이는 

서브 인터페이스(Sub-Interface)를 사용하여 할당하였고

 

필자가 사용한 패킷 트레이서는 태깅 프로토콜이 기본적으로

802.1Q로 고정되어 있으며 해당 프로토콜로 인캡슐레이션된

프레임을 수신하기 위해서 라우터 각각의 서브 인터페이스에

인캡슐레이션 설정을 진행함

 

결과를 확인해보면 Node 2(.40)에서 같은 VLAN에 소속되어 있는 Node 1(.10)에게

icmp 통신을 요청하면 스위치를 통해서 직접 통신이 가능하지만,

같은 스위치에만 물려있고 VLAN은 다른 소속인 Ser 2(.30)과 통신하려면

라우터를 거쳐야만 통신이 가능한 것을 확인할 수 있음

 

 

● 설정 내용

- SW 1

SW1(config)#vtp domain TEST                      
SW1(config)#vtp password 1234                   

SW1(config)#vlan 2                                        
SW1(config-vlan)#name Server
SW1(config)#int fa1/1
SW1(config-if)#switchport mode access
SW1(config-if)#switchport access vlan 2
SW1(config)#int fa2/1
SW1(config-if)#switchport mode trunk
SW1(config-if)#switchport trunk allowed vlan all
SW1(config)#int fa3/1
SW1(config-if)#switchport mode trunk
SW1(config-if)#switchport trunk allowed vlan all
SW1(config)#int vlan 1
SW1(config-if)#ip address 192.168.100.2 255.255.255.0

 

- SW 2

SW2(config)#vtp domain TEST
SW2(config)#vtp password 1234
SW2(config)#do sh vlan


VLAN Name Status Ports
---- -------------------------------- --------- -------------------------------
1 default active Fa0/1, Fa1/1, Fa3/1, Fa4/1Fa5/1
2 Server active

SW2(config)#int fa0/1
SW2(config-if)#switchport mode access
SW2(config-if)#switchport access vlan 2

 

- RT

RT(config)#int fa0/0
RT(config-if)#no sh
RT(config)#int fa0/0.1
RT(config-subif)#encapsulation dot1Q 1 native
RT(config-subif)#ip address 192.168.100.1 255.255.255.0
RT(config-subif)#int fa0/0.2
RT(config-subif)#encapsulation dot1Q 2
RT(config-subif)#ip address 192.168.200.1 255.255.255.0

 

'Network' 카테고리의 다른 글

[Network]Router_02  (0) 2022.11.22
[Network]Router_01  (0) 2022.11.21
[Network]STP_Algorithm  (0) 2022.11.11
[Network]FDDI  (0) 2022.11.11
[Network]Ethernet  (0) 2022.11.09

STP(Spanning Tree Protocol)

브리지 / 스위치에서 안정된 연결을 위해서 이중화(or 다중) 연결을 해놓으면

브리지 / 스위치 사이의 경로(회선)가 여러 개가 됨으로써 브로드캐스트가 내부에서 순환하며

브로드캐스트 스톰(Broadcast Storm)이 되어 루핑(Looping)이 발생하는데

이를 차단하기 위해서 사용되는 알고리즘이 바로 STP 알고리즘으로

 

Priority(32768) -> MAC 주소 -> 케이블 연결(Path Cost) -> 포트 번호(Port Number) 순으로

브리지 / 스위치 간 2초 간격으로 BPDU(Bridge Protocol Data Unit)를 주고 받아 주(Main) 회선을 판단한 뒤,

주 회선에 문제 발생 시 대체회선 주 회선으로 전환하여 통신이 가능하게 하는 방식이다.

 

STP가 적용된 스위치의 동작 순서는 "Blocking->  Listening -> Learning -> Forwarding" 정도로 구분할 수 있다.

 

 

● 루핑(Looping)이란

Switch 1과 Switch 2 사이의 통신 회선이 두 개인 상황

 

예시로 현재 Switch 1에는 자신에게 연결된 Node 1의 MAC 주소는 알고있지만, 

Switch 2에 연결되어 있는 Node 2의 MAC 주소는 모르고 있다고 가정할 때,

Node 1에서 Node 2로 통신을 하기 위한 ARP 브로드캐스트를 스위치로 올려보낼 것이다.

 

그럼 Switch 1은 회선 1, 2번에 프레임을 Flooding 하게 되는데,

Switch 2에서도 동일한 동작을 수행하기 때문에 회선 Switch 1의 입장에서 봤을 때,

자신이 보낸 프레임을 다시 돌려받는 동작을 끊임없이 수행하게 된다.

이런 현상을 "루핑"이라고 한다. 

 

 

● STP 알고리즘의 작동 방식

(좌)임의의 순서로 스위치를 배치 / (우)STP 알고리즘에 의해 선별된 지정회선과 대체회선

 

내부 LAN에서 스위치를 여러 개 두고 사용할 때,

이 중에서 선별된 주 스위치를 루트 스위치(Root Switch)라고 부르고

Root Switch에서 나머지 다른 스위치로 향하는 포트 지정회선(Designated Port),

나머지 스위치에서 Root Swtich까지의 경로가 가장 짧은 포트루트회선(Root Port),

위의 두 가지에 해당하지 않는 대체되는 포트를 대체회선(Alternative Port)이라고 부르며 차단 상태로 전환된다.

 

** 그림(우) 상에서 실선처리 된 부분 대체회선

 

이해를 돕기 위한 그림

 

● RSTP(Rapid STP)

STP 사용 중 문제 발생 시 대체 경로로의 수정 수렴시간(Convergence Time)을 단축시키기 위해 

보완된 프로토콜로 STP와 동일하게 작동되지만 RSTP를 지원해주는 스위치를 사용해야 하며,

기존 STP의 경우 토폴로지 변경 발생 시 루트 스위치를 통해서만 경로를 수정해야 했지만

RSTP의 경우 토폴로지 변경이 발생 한 스위치에서 직접 네트워크 전체에 변경됨을 알릴 수 있고

기존보다 다양한 BPDU 메시지로 인해서 짧은 시간(약 2초) 내에 복구가 가능하다는 점이 존재한다.

 

 

● 스위칭의 방식

스토어 앤 포워드(Store-and-Forward) : 전체 프레임을 모두 받아서 버퍼에 임시 저장한 뒤 CRC에러 체크

이상이 없을 시에는 포워딩 시키고 이상 식별 뒤에는 프레임을 버리는 방식이다.

프레임에 필터링을 걸 수 있다는 장점도 존재

 

컷 쓰루(Cut-Through) : 프레임 헤더에서 목적지만 보고 포워딩하는 방식이다. 지연은 거의 없지만,

불량 프레임도 포워딩을 할 수 있다는 것필터링을 걸 수 없다는 리스크가 존재

 

프래그먼트 프리(Fragment-Free) : 대부분 손상된 프레임은 64Byte 이내에서 발생한다는 점에서 착안한 기법으로,

처음 64Byte가 도착할 때 까지 버퍼에 저장한 뒤 검사해서 이상이 없으면 포워딩하는 기법이다.

Modified-Cut-Through 라고도 불린다.

 

하이브리드(Hybrid) : 평소에는 Cut Through 방식으로 사용하다가 미리 정해놓은 에러 한계치를 넘으면

자동으로 Store and Forward로 전환하고 또 다른 한계치에 닿았을 때, 

다시 Cut Through로 동작시키는 기법을 의미한다.

일부 스위치에서만 사용하는 방식이다.

'Network' 카테고리의 다른 글

[Network]Router_01  (0) 2022.11.21
[Network]VLAN  (0) 2022.11.16
[Network]FDDI  (0) 2022.11.11
[Network]Ethernet  (0) 2022.11.09
[Network]MAC_Address  (0) 2022.11.09

FDDI(Fiber Distributed Data Interface)

 

내용출처 : https://commons.wikimedia.org/ (FDDI 구조)

 

FDDI는 100Mbps LAN을 위한 사양으로 토큰링과 유사한 토큰패스 형식을 사용하지만,

기존 토큰링에서 발생했던 치명적인 단점을 보완하기 위해 개발된 방식으로

광케이블로 구성되어 매우 빠르고 신뢰도가 높아서 백본(Backbone) 네트워크에서 주로 사용된다.

 

FDDI 링은 서로 반대방향으로 도는 이중 링으로 구성되어져 있어, 1차 링(Primary Ring)에 문제가 발생해도

2차 링(Secondary Ring)을 통해서 즉시 프레임이 반대 방향으로 계속 흐를 수 있게 하는 래핑(Wrapping) 기법이 사용된다.

 

따라서 DAS(Dual Attached Station)장치의 NIC(Network Interface Card)는 4개의 인터페이스가 있어야 한다.

**  IN x 2, OUT x 2 = 4개

 

 

● 참고적으로 알아두면 좋을 광섬유의 데이터 전송 방식 두 가지

- 단일 모드 광섬유(Singlemode Light Propagation) : 광원으로 레이저(Laser)를 사용, 장거리에 적합

- 다중 모드 광섬유(Multimode Light Propagation) : 광원으로 LED(Light Emitting Diode)를 사용, 단거리에 적합

 

 

● FDDI 구성 방식

내용출처 : https://commons.wikimedia.org/

 

FDDI는 SAS(Single Attached Station), DAS(Dual Attached Station), 집중화기(Concentrator) 세 가지 방식으로 연결된다.

SAS는 위의 그림에서 보듯이 집중화기를 통해 네트워크에 연결되므로 SAS를 끄거나 제거해도 문제가 발생되지 않지만,

DAS의 경우 1차 링과 2차 링에 모두 직접 연결 되어있기 때문에 DAS에 문제가 발생 시 네트워크 전체에 영향이 미친다.

'Network' 카테고리의 다른 글

[Network]VLAN  (0) 2022.11.16
[Network]STP_Algorithm  (0) 2022.11.11
[Network]Ethernet  (0) 2022.11.09
[Network]MAC_Address  (0) 2022.11.09
[Network]OSI_7_Layer  (0) 2022.10.29

+ Recent posts