2019/08/23: 4개의 글

[네트워크/리눅스1급] 참고/학습용 기출문제 4 (7월)

Posted by nkjok
2019. 8. 23. 18:01 자격증관련/네트워크-리눅스1급
반응형

7월 네트워크 및 리눅스 평가 시험

 

[네트워크]

1. Internet Layer를 구성하는 프로토콜의 헤더에 대한 설명으로 옳지 않은 것은?

1) IP 헤더의 TTL 필드는 Looping에 의해 패킷이 영구히 떠도는 것을 방지하기 위한 필드이다.

2) IP 헤더의 프로토콜 필드는 상위 계층의 프로토콜을 식별하기 위해 사용되는 필드이다.

3) ICMP Echo Request 패킷의 Type, Code는 각각 '0', '0'이다.

4) ARP Request 패킷의 목적지 MAC Address는 브로드 캐스트인 'FF-FF-FF-FF-FF-FF'이다.

설명 : Type 0, Code 0은 ICMP Echo Reply이며, ICMP Echo Request는 Type 8, Code 0이다.

 

2. DNS에 관한 설명으로 옳지 않은 것은?

1) DNS는 최상위에 루트 노드를 갖는 계층구조의 트리 형태를 갖추고 있으며 최대 128개의 계층(Level)을 가질 수 있다.

2) DNS에서 1차 서버(Primary Server)는 자신의 권역(Zone)에 대한 저보의 생성, 관리, 업데이트를 맡고 있다.

3) DNS 메시지에는 모두 쿼리(Query)와 응답(Response)의 두 가지 종류가 있다.

4) DNS에서는 하위 계층 프로토콜로써 UDP만 사용한다.

설명 : DNS는 기본적으로 UDP 프로토콜을 이용하지만 특수한 상황에서는 TCP 프로토콜을 이용하기도 한다. (TCP, UDP의 PORT 53 사용)

- TCP가 사용되는 경우

Zone Transfer = 가용성을 위해 두개 이상의 DNS서버를 이용할 경우 Master에서 Slave로 Zone정보를 보낼 때 TCP를 사용

 

3. TCP 헤더의 설명으로 올바른 것은?

1) RST 플래그 : 데이터가 제대로 전송된 것을 알려준다.

2) Window Size : 현재 상태의 최대 버퍼 크기를 말한다.

3) Reserved : 수신된 Sequence Number에 대하여 예상된 다음 옥텟을 명시한다.

4) FIN 플래그 : 3-Way handshaking 과정을 제의하는 플래그이다.

설명 : Windows Size는 한번에 받을 수 있는 데이터의 양이다. 통신을 할 때 상대방에게 자신의 Windows Size를 알려주면 상대방은 그만큼의 양을 한번에 전송하고 상대방이 다처리했는지 확인(ACK) 후에 다음 데이터를 전송하는 것이다. 즉 수신자가 한 번에 버퍼링할 수 있는 최대 데이터 크기를 의미한다. 송신자는 수신자의 window size만큼 ACK를 기다리지 않고 데이터를 전송 할 수 있다.

 

4. C Class의 네트워크 주소가 '192.168.10.0'이고, 서브넷 마스크가 '255.255.255.240'일 때, 최대 사용 가능한 호스트 수는?

1) 10

2) 14개

3) 26

4) 32

설명 : C 클래스의 서브넷 마스크는 255.255.255.0 이며 1개의 네트워크 256-2=254개의 호스트를 가지고있다.

255.255.255.240의 경우 이진수로 표현하면 “1111_1111.1111_1111.1111_1111.1111_0000” 이다. 기본 C클래스 서브넷마스크에서 호스트필드를 네트워크 필드로 4개 빌려온 경우이며 블록으로 나타내면 /28 (bit) 이다. (호스트 수 16-2=14, 네트워크 수=16)

#빌려온 부분

“1111_1111.1111_1111.1111_1111.0000_0000” (C 클래스 기본 서브넷 마스크)

“1111_1111.1111_1111.1111_1111.1111_0000” (빌려온 부분, 마지막 옥텟 8비트 중 왼쪽부터 4개)

 

5. IPv4 IP Address 할당에 대한 설명으로 옳지 않은것은?

1) 모든 Network ID Host ID의 비트가 '1'이 되어서는 안된다.

2) Class B는 최상위 2비트를 '10'으로 설정한다.

3) Class A는 취상위 3비트를 '110'으로 설정한다.

4) '127.x.x.x'형태의 IP AddressLoopback주소를 나타내는 특수 Address이다.

설명 : Class A는 최상위 비트를 ‘0’으로 설정한다. 블록 /8, 네트워크 수 128 개 (0~127), 호스트 수 16,777,216 개, 넷마스크 255.0.0.0 이다.

클래스 별 최상위 비트

A-Class : 00000000.00000000.00000000.00000000 (0)

B-Class : 10000000.00000000.00000000.00000000 (128)

C-Class : 11000000.00000000.00000000.00000000 (128+64=192)

 

[리눅스]

1. 다음 중 프로세스에 관한 설명으로 틀린 것은?

1) 하나의 프로세스가 다른 프로세스를 실행하기 위한 방법에는 fork exec가 있다.

2) 최초의 프로세스인 init은 PID번호가 0이다.

3) inet 방식은 항상 프로세스가 메모리에 상주하는 것이 아니라, 클라이언트의 서비스 요청이 있을 때 메모리에 상주한다.

4) 리눅스 부팅 시에 발생하는 프로세스는 fork 방식이다.

설명 : init 프로세스는 PID가 1번이다. pid 0의 경우 swapper, swapper는 부모 프로세스가 존재하지 않고, 부트로더 등에 의해서 실행된다.

 


2.
다음 중 logrotate에 대한 설명으로 틀린 것은?

1) 로그 파일은 하루, 일주일, 한달 단위로 로테이션 할 수 있다.

2) 파일 크키에 제한을 통해 로테이션 할 수 있다.

3) 로그 파일 압축은 제공하지 않는다.

4) cron에 의해 스케줄링되어 실행된다.

설명 : 로그로테이트(logrotate)란 로그를 저장하고 관리하는 도구이다. 기본적으로 cron 데몬을 이용해 logrotate를 실행한다.

(logrotate 관련파일 : /etc/logrotate.conf, /etc/logrotate.d/*)

압축에 대해 명시하지 않은 모든 로그는 압축하기 때문에 정답은 3번이다.

 


3. 다음 중 dmesg 명령어에 대한 설명으로 알맞은 것은?

1) /var/log/dmesg 파일의 내용을 출력하는 명령이다.

2) 커널 링 버퍼의 내용을 출력하고 제어하는 명령이다.

3) /var/log/boot.log 파일의 내용을 출력하는 명령이다.

4) /var/log/btmp 파일의 내용을 출력하는 명령이다.

설명 : dmesg는 커널 링 버퍼의 내용을 출력하고 제어하는 명령이다. 커널 링 버퍼는 커널의 동작과 관련된 메시지를 기록해 주는 영역이다. 부팅 후에 부팅과 관련된 메시지를 보기 위해서는 dmesg 명령어를 사용 한다.

# 시스템에는 부팅과 관련된 메시지를 포함하여 커널 관련 메시지를 담는 약 8196 byte의 버퍼 크기를 갖고 메시지를 기록하는데 이 메시지를 기록하는 것이 klogd 데몬

 

4. ping 응답하지 않기 위해 커널 파라미터값을 조정하려고 한다. 다음 중 관련 명령으로 알맞은 것은?

1) sysctl -n net.ipv4.icmp_echo_ignore_all=0

2) sysctl -n net.ipv4.icmp_echo_ignore_all=1

3) sysctl -w net.ipv4.icmp_echo_ignore_all=0

4) sysctl -w net.ipv4.icmp_echo_ignore_all=1

설명 : sysctl은 Redhat 6.2 부터 포함된 kernel parameter 값들을 조절하기 위한 utility 이다. sysctl 이 조절할수 있는 값들은 /proc/sys/ 아래에 있는 list 들이다.

조정할수 있는 모든 parameter 들은 "sysctl -a" 명령어를 통해 확인할 수 있다.

# -w는 파라미터의 값을 변경하는 옵션이다.

- 사용 예

[root@localhost ~]#sysctl -w net.ipv4.icmp_echo_ignore_all=1 (핑 응답 하지않게 설정= 활성화)

[root@localhost ~]#sysctl -w net.ipv4.icmp_echo_ignore_all=0 (핑 응답 하도록 설정= 비활성화)

 


5.
다음 중 grep 명령으로 jalin.txt에서 'posein'또는 'yuloje'라는 문자열을 검색하는 방법으로 알맞은 것은?

1) grep 'posein|yuloje' jalin.txt

2) grep -e 'posein|yuloje' jalin.txt

3) grep -E 'posein|yuloje' jalin.txt

4) grep -p 'posein|yuloje' jalin.txt

설명 : grep 유틸리티는 하나 이상의 패턴과 일치하는 행을 선택하여 주어진 입력 파일을 탐색한다. 패턴의 유형은 지정된 옵션에 의해 제어된다. –E 옵션을 통해 문서파일 내 작성문의 일치 부분을 출력할 수 있다.

1. “일치 문자” 출력 예

[root@localhost /]# grep -E 'eth|net' durian.txt

eth0

netmask

2. “일치하지 않는 문자” 출력 예

[root@localhost /]# grep -Ev 'eth|net' durian.txt

test

kong

tekong

 

3. 원문 내용

[root@localhost /]# vi durian.txt

eth0

netmask

test

kong

tekong

반응형

[네트워크/리눅스1급] 참고/학습용 기출문제 3 (6월)

Posted by nkjok
2019. 8. 23. 18:00 자격증관련/네트워크-리눅스1급
반응형

6월 네트워크 및 리눅스 평가 시험

 

[네트워크]

1. UDP 헤더 포맷에 대한 설명으로 옳지 않은 것은?

1) Source Port : 데이터를 보내는 송신측의 응용프로세스를 식별하기 위한 포트 번호이다.

2) Destination Port : 데이터를 받는 수신측의 응용 프로세스를 식별하기 위한 포트 번호이다.

3) Length : 데이터 길이를 제외한 헤더 길이이다.

4) Checksum : 전송중에 세그먼트가 손상되지 않았음을 확인 할 수 있다.

설명 : 바이트 단위의 길이. 최소값 8 (헤더 만 포함될 때), 즉 UDP 헤더를 포함한 패킷 전체의 길이를 바이트 단위로 표시한다.

 

2. IPv4 헤더 내 필드의 내용 중 해당 패킷이 분할된 조각 중의 하나임을 알 수 있게 하는 것은? 1) . 'Identification' 필드 = 1000

2) 'Do Not Fragment' 필드 = 0

3) 'More Fragment' 필드 = 0

4) 'Fragment Offset' 필드 = 1000

설명 : 20바이트 헤더 + 4,980바이트 데이터 = 5,000바이트의 데이터를 전송한다고 가정했을 때, 분할된 패킷들은 동일한 ID (예 : 0X0037) 값을 가지고 마지막 패킷을 제외한 나머지 패킷은 MF 값을 1로 가진다. (마지막 패킷은 0의 값을 가짐) Fragment Offset의 경우 최대 1500 바이트까지 분할한 패킷의 시작점 위치를 나타낸다. (1480바이트로 분할 예 : 최초패킷은 Offset 값 0, 2번째 패킷은 Offset 값 1480, 3번째 패킷은 Offset 값 2960)

 

3. IP데이터그램이 세개의 데이터그램으로 분할(Fragmentation)되는 경우 다음 중 옳은 것은?

1) 세 개의 데이터그램 모두 "Do Not Fragment"비트가 1로 설정된다.

2) 세 개의 데이터그램 모두 "More Fragment' 비트가 1로 설정된다.

3) 세 개의 데이터그램 모두 동일한 'Identification' 값을 갖는다.

4) 세 개의 데이터그램 모두 동일한 'Offset' 값을 갖는다.

설명 : Identification은 식별하기위한 ID 값 (식별자) 이며, 분할 된 패킷 모두 동일한 값을 갖는다. IP 헤더의 Identification 필드는 16bit이며, 0xfb95 등 으로 표현한다.

 

4. IPv4의 헤더필드에 대한 설명으로 옳지 않은 것은?

1) VER 필드는 IP프로토콜의 버전을 나타낸다.

2) HLEN 필드는 헤더의 길이를 표시한다.

3) Identification 필드는 수신 호스트에 의해 생성되는 유일한 식별자이다.

4) Protocol 필드는 패킷이 전송되어져야 할 트랜스포트 프로토콜의 ID를 담는다.

설명 : Identification 필드는 송신 호스트가 지정하는 패킷 구분자 기능을 수행한다. IP 프로토콜이 분할한 패킷에 동일한 고유 번호를 부여함으로써, 수신 호스트가 Identification 번호가 같은 패킷을 다시 병합(Reassembly)할 수 있도록 해준다.

 

5. 네트워크 ID '210.182.73.0'을 몇 개의 서브넷으로 나누고, 각 서브넷은 적어도 40개 이상의 Host ID를 필요로 한다. 적절한 서브넷 마스크 값은?

1) 255.255.255.192

2) 255.255.255.224

3) 255.255.255.240

4) 255.255.255.248

설명 : 해당 서브넷 마스크의 마지막 옥텟 0을 이진수로 표현하면 0000 0000 이며, (0이 8개, 1개의 0=1bit) 8bit로 이루어져있다. 네트워크 ID는 이진수의 왼쪽 0부터 비트를 빌려옴으로써 (호스트ID를 네트워크ID로 빌려옴), 네트워크 ID를 2개, 4개, 8개, 16개, 32개, 64개, 128개 까지 빌려올 수 있다. (128개 = 7개의 비트를 빌려옴, 1111 1110) 호스트ID의 경우 네트워크ID를 제외한 0의 값에 해당되며, 40개 이상의 호스트 ID가 필요한 경우 1100 0000 의 서브넷 마스크를 가져여야한다.

(4개의 네트워크, 64개의 호스트), 1100 0000을 십진수로 표현하면 192이다.

네트워크ID를 1개 더 빌려오면 호스트 개수는 32개

네트워크ID를 1개 덜 빌려오면 호스트 개수는 128개

가장 적잘한 서브넷 마스크 255.255.255.192 (호스트 개수 64개)

 

 

 

[리눅스]

1. 다음중 kill 명령어에 대한 설명으로 틀린것은?
1) kill 명령은 PID를 사용한다
2) kill
명령어 사용시 시그널을 지정하지 않으면 SIGKILL 시그널이 전송된다.
3) 여러 개의 프로세스에 시그널을 보낼 수 있다.
4) kill 명령은 작업번호를 사용해서 프로세스를 종료 시킬 수 있다.
설명 : 시그널의 종류를 지정하지 않으면 시그널 ID가 15번인 SIGTERM(TERM)을 보내게 된다.

“번호15 SIGTERM(TERM)” Terminate의 약자로 가능한 정상 종료시키는 시그널로 kill 명령의 기본 시그널이다. 프로세스를 종료 시 에는 [CTRL] +[C] , SIGINT(INT)나 기본시그널인 TERM 시그널(-15)로 정상적으로 종료를 시도하는 것이 좋다. 그래도 프로세스가 종료가 안되면 강제종료 시그널 SIGKILL(KILL) 을 사용하면 된다. (번호2=SIGINT, 번호9=SIGKILL)

 

2. 다음 중 renice 명령에 대한 설명으로 틀린 것은?
1) 실행중인 프로세스의 우선순위를 변경할 때 사용하는 명령이다.
2) PID
이외에 사용자명, 그룹ID로 사용할 수 있다.
3)
프로세스명을 사용한다.
4)
실행중인 프로세스에 NI값이 즉시 부여되고, 프로세스가 추가로 발생하지 않는다.

설명 : renice는 실행중인 프로세스의 우선순위를 조정하며, nice는 프로그램을 실행할 때 우선순위를 조정한다. 우선순위 값이 작을수록 우선순위가 높으며, renice는 PID를 통한 우선순위 조정, nice는 프로세스 명을 통해 우선순위를 조정한다.

 

3. 다음 중 설치된 파일로 rpm 패키지 이름을 알아내려고 할 때 ( 괄호 ) 안에 들어갈 내용으로 알맞은 것은?

# rpm ( ) /bin/ls

1) –qp 2) -qf 3) -qc 4) -qa
설명 : rpm –qf는 설치된 파일로 rpm 패키지 이름을 알아낼 때 사용한다.

-q : 설치 된 패키지 확인

-f : 파일에 대한 패키지 질의 수행

 

4. 다음 중 소스 파일을 이용한 프로그램 설치 단계에서 configure 작업 후에 생성되는 파일 명으로 알맞은 것은?
1) config 2) Kconfig 3) Makefile 4) README
설명 : 소스파일로 된 패키지를 설치 시 기본적으로 3가지 명령을 내린다

[ configure(환경설정) -> make(컴파일) -> make install(설치단계) ]

configure는 환경설정을 해주는 명령어이다. 이 명령어를 통해 Makefile이라는 소스를 컴파일 할수 있는 파일이 만들어 진다.

Makefile : 프로그램의 빌드과정을 표준 문법으로 기술한 파일

 

5. 다음 중 압축률이 좋은 순서로 나열한 것으로 알맞은 것은?

1) compress > gzip > bzip2 > xz
2) compress > bzip2 > gzip > xz
3) xz > gzip > bzip2 > compress
4) xz > bzip2 > gzip > compress
설명 : bzip2는 gzip이나 ZIP에 비해 대체로 압축률이 크지만 비교적 느리다. xz는 bz2 보다 이후에 나왔으며 압축률이 bz2보다 크다.

7.7.M 용량의 bin 폴더를 압축하였을 때 xz > bzip2 > gzip 순서의 용량으로 압축되었다. (2.3M -> 3.0M -> 3.4M)

해당 순서의 답안은 4번 밖에 없으므로 4번이 답이다.

(아래는 압축할 때 사용한 명령어이다.)

tar cvfz 123.tar.gz /bin

tar cvfj 123.tar.bz2 /bin

tar cvfJ 123.tar.xz /bin

반응형

[네트워크/리눅스1급] 참고/학습용 기출문제 2 (빈내용 - 5월)

Posted by nkjok
2019. 8. 23. 17:59 자격증관련/네트워크-리눅스1급
반응형
반응형

[네트워크/리눅스1급] 참고/학습용 기출문제 1 (빈내용 - 4월)

Posted by nkjok
2019. 8. 23. 17:58 자격증관련/네트워크-리눅스1급
반응형
반응형