글을 시작하기에 앞서...
netwhat 과제 수행에 걸리는 시간은 최소 1주 이상입니다.
1주 동안 netwhat 관련 개념들을 공부해야 무난히 과제에 통과할 수 있다는 뜻인데요.
그런데 제가 쓴 이번 글만 보고 "진짜" 15분만에 통과를 하시는 분들이 몇몇 계시는 것 같습니다.
그래서 해당 포스트의 제목을 바꾸고, 이 글을 보시는 분들께 이 글이 여러분의 치팅을 위한 글이 아니라는 점을 밝히고 싶습니다.
최소한 필수적인 개념들을 이해하시고, 시험에 나올 만한 것들을 충분히 암기하신 후에 netwhat 과제 subscribe to defense 하시기 바랍니다.
TCP가 UDP보다 왜 느린지 설명하지 못한다거나 netwhat의 주소 관련 문제가 무슨 뜻인지도 모르는 상태에서 평가를 받는 일은 없었으면 좋겠습니다. 어차피 netwhat에 나오는 개념들은 IT 업계 종사할 사람이라면 상식으로 알고 있어야 할 개념들이니까요 :)
잔소리로 글을 시작하게 됐네요.
아무튼 newhat을 열심히 공부하신 여러분들 모두 netwhat 시험 리트라이 없이 통과하는 데에 이 글이 도움이 되길 바라면서
글, 시작하겠습니다.
🔎 Netwhat 시험을 통과해보자.
깃헙 : https://github.com/ChoiKanghun/netwhat
🔎 준비물
- ipv4 ipv6는 몇 비트를 쓰는지 등에 대한 netwhat 필수개념들을 공부한다.
- netwhat 전용 계산기를 만든 minckim 님의 프로그램을 켠다.
- 켜는 방법 :
- 레포 안에 있는
netwhat_calculator.c
를 실행한다. (gcc netwhat_calculator.c
) - 생성된
.out
파일을 실행한다.
- 레포 안에 있는
-
다음 velog 창을 띄워 놓는다. (daelee님의 블로그 !)
: https://velog.io/@hidaehyunlee/Netwhat-%EC%97%B0%EC%8A%B5%EB%AC%B8%EC%A0%9C-%EC%A0%95%EB%A6%AC
-
google에다가 `private address`를 검색한 결과창 띄워놓기.
시험 시작. 🔎
제한 시간은 10분이다.
띄워둔 창들의 도움을 받으면 10분은 넉넉하게 느껴질 것이다. (본인은 7분 걸림)
시험은 netwhat 프로젝트 등록 후 netwhat.42.fr
에 접속하여 시작한다.
시험은 크게 두 파트로 나뉜다.
-
주소를 구하는 문제(체감상 3 / 4를 차지하는 문제)
-
개념을 묻는 문제.
여기에 대해 1번은 우리가 실행시킨 .out
파일을 이용해 모두 풀 수 있고,
2번은 띄워둔 velog와 google로 해결가능하다.
PART 1
주소를 구하는 문제도 여러 가지 유형이 있는데, 크게 3 가지가 있다.
먼저 네트워크 및 브로드캐스트 주소를 구하는 문제이다.
What is the network address of
로 시작하며 전체 문제 예제는
What is the network address of a host with an IP address of 182.161.121.118/24?
이런 식이다.
여기서 182.161.121.118/24
이것만 긁어서 우리가 실행시켜둔 .out
에 붙여넣고 엔터를 치면
위와 같은 화면이 뜬다.
What is the network address of
으로 시작하는 이런 유형의 문제의 경우 위 결과에서
network_id
부분을 정답으로 체크하고 넘어가면 된다.
다음으로 호스트 주소 수를 구하는 문제다.
What is the maximum number of IP addresses that can be assigned to hosts
로 시작하며 전체 예제 문장은 이렇다.
What is the maximum number of IP addresses that can be assigned to hosts on a local subnet using the 255.255.255.128 subnet mask?
혹은 how many hosts
가 문장 중간에 들어간 경우도 같은 유형이다.
이 경우에는 복사 붙여넣기를 두 번 해야 한다. 이 유형의 경우만 그렇다.
실행시킨 .out 파일에서
type option
에 255.255.255.128:255.255.255.128
를 복사해 붙여넣는다.
(cmd + v : cmd + v와 같다.)
그러면 아래와 같은 결과가 나오는데,
위에서 num_of_host가 정답이 된다.
세 번째 유형은 호스트 주소의 '범위'를 구하는 유형이다.
키워드는 valid host range
이 문장 중간에 나오는 것이다.
주로 다음과 같이 출제된다.
Which of the following proposals is the valid host range for the subnet on which the IP address 1.93.149.6/17 resides?
이 경우 1.93.149.6/17
이 부분을 복사해 .out 프로그램에 붙여 넣으면
위와 같은 화면이 뜬다.
위 화면에서 host_range
라고 되어 있는 곳이 실제 범위가 된다.
-
참고로
Which of the following IP addresses is a private address?
와 같이 생긴 문제가 나온다면 google에다가 private address를 치면 나오는 그 범위 안에 있는 보기를 정답으로 체크하고 넘기면 된다. -
혹은 우리가 실행시켜놓은 프로그램에서 p를 입력하고 엔터를 친 뒤
위와 같이 생긴 보기 전체를 긁어 붙여넣으면
위와 같이 뜬다. 당연히 정답은 yes가 적힌 부분.
(개인적으로 이거 구현한거 보고 굉장히 놀랐다.)
빠져나오는 건 q를 입력하고 엔터.
PART 2
나머지 부분에 대해서는 개념들 (특히 UDP/TCP)에 관한 문제다.
그런데 netwhat 문제들이 몇 해 째 바뀌질 않아서 단순히 문제 일부를(혹은 전체를) 긁어서 구글에다가 치기만 해도 정답이 나온다.
개념들에 대해 모르는 것이 있을 때에는 문제의 키워드가 된다 싶은 부분을 복사해서
띄워놓은 velog에서 cmd + f
로 찾아보고 결과가 없으면 google에다가 그대로 긁어 검색하자.
내 경우 커버되지 않은 문제는 없었다.
🔎 시험 끝!
여기까지 따라왔다면 시험을 무난히 치렀을 것이다.
결과창에 뜨는 코드를 복사하고, answer.txt 라는 이름의 파일을 만들어 그 안에 붙여넣는다.
그리고 그 파일을 git repo에 넣고 해당 파일 제출하면 끝!
여기까지 따라하느라 모두 수고 많으셨습니다 :)
도움이 되셨다면 아래 레포에 star 한번만 눌러주세요!
github.com/ChoiKanghun/netwhat
그리고 저 말고 minckim님을 만난다면 netwhat 과제 수행에 도움이 많이 됐다고 말씀해주세요 ;)
'Code 42 > Netwhat' 카테고리의 다른 글
네트워크 이해(Feat. Netwhat 시험 대비하기) (2) | 2020.03.10 |
---|---|
Netwhat 시험 대비하기 - (1) (2) (3) (4) (5) (6) (7)에 대한 추가 자료 (0) | 2020.03.10 |
Netwhat 과제 해석 (0) | 2020.03.10 |
최근댓글