네트워크 실습 1 - 네트워크 서브네팅, 정적 라우팅
지난 시간에 배웠던 서브넷팅과 라우터를 결합한 실습을 진행한다.
시나리오
192.168.100.0/24 네트워크 서브네팅 + 라우터 3개
라우터 0(R0) - 1.1.1.1/24
호스트 총 30개 필요
- 2^N승에서 가장 가까운 수 : 2^5 = 32 => 5비트를 제외한 3비트를 빌린다.
192.168.100.[000]0 0000 -> 네트워크 ID -> 192.168.100.0
192.168.100.[000]1 1111 -> 브로드캐스트 주소 -> 192.168.100.31
사용가능한 IP 범위 : 192.168.100.1 ~ 192.168.100.30
- 게이트웨이 IP : 192.168.100.30 (가장 마지막 번호)
라우터 1(R1) - 1.1.1.2/24, 2.2.2.2/24
호스트 총 14대 필요
- 2^N승에서 가장 가까운 수 : 2^4 = 16 => 4비트를 제외한 4비트를 빌린다.
192.168.100.[0010] 0000 -> 네트워크 ID -> 192.168.100.32
192.168.100.[0010] 1111 -> 브로드캐스트 주소 -> 192.168.100.47
사용가능한 IP 범위 : 192.168.100.33 ~ 192.168.100.46
- 게이트웨이 IP : 192.168.100.46 (가장 마지막 번호)
라우터 2(R2) -> 2.2.2.3/24
호스트 총 6대 필요
- 2^N승에서 가장 가까운 수 : 2^3 = 8 => 3비트를 제외한 5비트를 빌린다.
192.168.100.[00110] 000 -> 네트워크 ID -> 192.168.100.48
192.168.100.[00110] 111 -> 브로드캐스트 주소 -> 192.168.100.55
사용가능한 IP 범위 : 192.168.100.49 ~ 192.168.100.54
- 게이트웨이 IP : 192.168.100.54 (가장 마지막 번호)
위 시나리오대로 구성함과 동시에 테스트를 위한 PC 1대씩 각 라우터에 연결하고 해당 PC의 IP는 가장 첫 번째 IP로 구성하겠다.
위처럼 각각의 서브네팅 네트워크에 PC를 한 대씩 두고 설정을 마쳤다. 이제 시나리오에서 구성한대로 토폴로지에 대한 캡션을 달아본다.
위처럼 네트워크를 구성하고 제일 마지막에 라우터 0에는 Telnet을 통해 접속하고, 라우터 2에는 SSH를 통해 접속해보겠다.
Router 0 IP 설정
먼저 라우터 0에 연결된 게이트웨이에 대한 설정을 진행한다.
반드시 라우터에서는 연결 하나 하나마다
no shutdown
을 입력해야 한다!
이어서 라우터 0에서 라우터 1로 가는 Serial2/0에 대한 설정을 진행한다.
해당 설정까지 마치고 라우터 0에 마우스를 올려놓으면 다음과 같은 사진 상태가 된다.
Router 1 IP 설정
먼저 라우터 1에 연결된 게이트웨이에 대한 설정을 진행한다.
이어서 라우터 0와의 연결점인 Serial2/0에 대한 설정을 진행한다.
라우터 1에서 라우터 2와의 연결점(라우터 1의 입장)인 Serial3/0에 대한 설정을 진행한다.
위와 같이 설정 후(라우터 1 Serial2/0 설정), 라우터 0의 상태는 다음과 같다.
IP 설정을 마친 라우터 1의 상태는 다음과 같다.
Router 2 IP 설정
위에서 진행했던 것 처럼 먼저 라우터 2 게이트웨이 설정을 진행한다.
이제 라우터 1와 라우터 2를 연결(라우터 2의 입장)하는 Serial2/0에 대한 설정을 진행한다.
위까지 설정을 마치고나면 다음과 같은 토폴로지가 구성된다.
Router 0 라우팅 테이블 구성
먼저 라우터 0은 라우터 1과 라우터 2가 담당하는 부분은 전부 라우터 1에만 전달한다.
라우터 0은 라우터 2와 연결되어 있지 않기 때문에 라우터 0은 네트워크에서 2.2.2.0 네트워크에 대한 정보는 모르는 상태이다.
따라서 2.2.2.0에 대한 정보를 라우팅 테이블에 저장한다.
그리고 각 라우터가 담당하는 서브네팅 구역에 대한 네트워크 ID를 1.1.1.2로 전달한 뒤 라우팅 테이블을 확인하겠다.
맨 마지막 파란 박스의 S는 정적 라우팅 레코드를 뜻하며, 해당 네트워크에 대한 정보는 1.1.1.2 -> 라우터 1에게 일임한다.
라우터 0에서 설정해야할 라우팅 설정은 끝이 났다.
Router 1 라우팅 테이블 구성
라우터 1은 라우터 0과 라우터 2의 연결다리 역할을 한다.
따라서, 라우터 0이 담당하는 네트워크 ID에 대한 정보를 저장하고, 라우터 2가 담당하는 네트워크 ID에 대한 정보를 저장하면 손쉽게 끝난다.
Router 2 라우팅 테이블 구성
라우터 2는 라우터 1과 라우터 2가 연결된 1.1.1.0 네트워크에 대해 알지 못하니 해당 정보를 라우팅 테이블에 정적으로 저장한다.
또한, 라우터 0과 라우터 1이 담당하는 네트워크에 대한 정보를 라우팅 테이블에 저장하고 확인하도록 한다.
통신 확인
테스트는 라우터 0의 192.168.100.1 PC 0에서 진행하도록 하겠다.
Router 0 Telnet 설정 및 Router 2 SSH 설정
라우터 0에서 Telnet 접속을 위한 설정을 한 뒤 Router 2에 SSH 설정을 하고, Router 2에 연결된 PC에서 Telnet으로 Router 0에 접근, Router 0에 연결된 PC에서 SSH로 Router 2에 접근하도록 하겠다.
해당 설정을 해주기 위해서 먼저 hostname을 바꿔야 한다. Router에서 hostname을 변경하기 위해서는 다음처럼 진행한다.
Hostname을 R0로 변경하고, telnet으로 접속할 유저를 minyeokue 암호를 1234로 정한다.
해당 R0에 접속해 enable을 할 때 비밀번호를 gitblog로 정한다.
line vty 0 4
명령어는 vty
가상터미널을 0부터 4까지 총 5개의 가상터미널을 사용하겠다는 뜻이다.
login local
명령어는 ID / PW 검사해서 접속을 시키겠다는 의미이며 그 이후에 나온 username과 password는 Telnet으로 라우터 0에 접속할 때 사용할 ID와 PW이다.
마지막의 enable secret
명령어로 라우터에 관리자 모드를 활성화할 때 비밀번호를 지정하는 명령어인데, 비슷한 명령어로 enable password
가 있지만, secret과 password의 차이는 암호화의 여부이다.
show running-config
명령어를 입력한뒤 엔터로 내리다보면 확인할 수 있을 것이다.
이제 라우터 0에 연결된 PC에서 Telnet으로 Router에 접속하겠다.
라우터 0에 대한 설정을 완료했고 테스트도 진행했으니, 이제 라우터 2에서 SSH 설정을 진행한다.
아까 Telnet 설정과 다른 부분은 transport input ssh
-> 해당 0 ~ 4의 가상 터미널을 ssh로 접속하겠다는 의미(port 변경)이다.
ssh로 접속하기 위해서 domain-name을 설정해줘야 하고, 해당 도메인네임과 라우터 Hostname을 조합해 rsa 키를 생성할 때의 이름으로 활용한다.
ip ssh time-out 60
명령어는 ssh로 접근한 뒤 60초간 입력이 없다면 ssh 로그인을 취소한다는 뜻이며, ip authentication-retries 3
명령어는 암호를 입력할 때 틀릴 수 있는 횟수를 3회로 한정했다는 의미이다.
enable password
는 암호화하지 않고 평문 형태로 저장된다.
위의 사진은 show running-config
를 관리자 모드로 입력했을 때 보여지는 것이다. 강조된 부분은 라우터 암호가 평문형태로 저장된 것을 확인할 수 있다.
라우터 2와 달리 라우터 0는 라우터 암호를 설정할 때 enable secret
으로 저장한 결과이다. 같은 “gitblog”라는 암호를 설정했음에도, 라우터 0에서는 식별이 불가능하다.
이제 Router 2에 연결된 PC에서 테스트를 진행한다.
성공적으로 연결되었으니, 이제 PC 3(라우터 2와 연결)에서 Telnet으로 라우터 0에 접속하고, PC 0(라우터 0와 연결)에서 SSH로 라우터 2에 접속해보겠다.
먼저 PC 3부터 진행하겠다.
성공적으로 연결되었으니, 이제 PC 0에서 SSH로 라우터 2에 접속하겠다.