[공부] 프로그래밍/Linux

LPIC level 1 102 공부 - 5장 정리 (네트워크 기초)

woodisco 2023. 9. 10. 14:01

 

5-1 IP 어드레스 nnn.nnn.nnn.nnn/26을 취득해, 그 중 하나를 루터에 할당했다. 호스트에 할당하는 것이 가능한 남은 어드레스의 개수를 기술

: 61

-> IP 어드레스 32비트의 구성 : 26비트 네트워크부 -> 6비트 호스트부

2의 6승 : 64

64-2(호스트 어드레스로 사용X)-1(루터) = 61

 

5-2 255.255.255.0 넷마스크의 경우, 네트워크부는 어떤 비트?

: 24비트

-> 8비트는 1바이트 8 x 3 = 24

 

5-3 어느 IP 어드레스가 로컬 서브넷네워트상의 호스트인지 리모트네트워크상의 호스트인지를 결정하기 위해서는 로컬호스트에 따라 사용되는것

: 넷마스크

-> 넷마스크 : IP 어드레스의 네트워크부와 호스트부를 특정하기 위한 값

 

5-4 IANA에서 정해져있는 IPv4의 프라이빗 어드레스

: 10.0.0.0/8

172.16.0.0/16

192.168.1.0/24

 

5-5 IPv6의 어드레스의 설명

: IPv6의 어드레스는 128비트의 어드레스 공간을 가진다

글로벌 유니캐스트 어드레스는 인터넷에서 사용 가능한 일의의 어드레스

어드레스 표기에 있어 비트가 모든 0의 필드가 연속하고 있는 경우, 그 사이의 0를 생략하여 [::]으로 표기 가능

 

5-6 IPv6의 올바른 표기

: 2001:503:ba3e::2:30

 

5-7 IPv6의 설명

: TCP, UDP, IP, ICMP의 프로토콜 번호는 IPv4도 IPv6도 같다

포트의 기능은 IPv4도 IPv6도 같다

ブロードキャスト를 서포트 하지 않는다

 

5-8 아래의 내용이 기술하고 있는 파일명

: /etc/services

telnet 23/tcp
telnet 23/udp
smtp   25/tcp  mail
smtp   25/udp  mail
 

 

5-9 コネクションレス의 데이터 신뢰성의 낮은 트렌스포트층의 프로토콜을 대문자 3문자로 기술 : UDP

 

5-10 포트번호의 값에 대한 설명

: 포트 번호의 범위는 0에서 65536의 범위

비특권 유저가 사용 가능한 포트 번호의 최소값은 1024이다

 

5-11 네트워크데몬에서 기동되는 데몬은, スタンドアロンデーモン으로서도 기동 가능하다. 다음의 데몬 중에서 スタンドアロンデーモン을 기동하는 데몬은?

: init, systemd

 

5-12 ________커맨드는, 엑티브한 네트워크의 정보와 UNIX 도메인 소켓 접속, 루틴 테이블을 표기 가능

: netstat

-> netstat 커맨드는 TCP와 UDP의 서비스 포트의 상태, UNIX 도메인 소켓의 상태, 루틴 정보등을 표기

-a (--all)
모든 프로토콜을 표기, 소켓의 접속대기를 포함하여 모두 표기
-l (--listening)
접속대기의 소켓을 표기
-n (--numeric)
호스트, 포트, 유저등 이름을 해결하지 않고, 숫자의 어드레스에서 표시
-p (--program)
소켓, 포트를 오픈하고 있는 프로그램의 PID와 이름을 표시
-r (--route)
루틴 테이블을 표시
-s (--statistics)
통계정보를 표시
-t (--tcp)
TCP 소켓을 표시
-u (--udp)
UDP 소켓을 표시
-x (--unix)
UNIX 소켓을 표시

 

5-13 netstat 커맨드를 실행한 내용으로 올바른 설명

: 이 호스트는 smtp의 서버로 되어 있다

이 호스트는 DNS 서버로 되어 있다

linux3부터 이 호스트에 ssh로 로그인 하고 있다

 

 

5-14 다음의 표시 내용을 얻을 수 있는 커맨드

: netstat -a

 

-> tcp, udp, unix의 모든 정보가 표시 되어있기 때문에 -a 옵션

 

5-15 인터넷에 접속한 환경에서 netstat -a, netstat -r 커맨드를 실행했더니 hang해버리고 아무런 결과를 얻지 못했다. 원인은?

: DNS에서 응답이 없다

 

5-16 호스트를 네트워크에 접속했다. 이 호스트와 로컬 호스트간의 IP 레벨에서 접속되고 있는지 확인하는 일반적인 커맨드

: ping

-> ping : ICMP라는 프로토콜을 사용한 패킷을 호스트에 송신해, 그 응답을 조사하여, IP 레벨에서의 호스트간의 접속성을 테스트

ping [옵션] 송신처 호스트
-c 송신패킷개수
송신라는 패킷의 개수를 지정
디폴트는 [Ctrl]+[C]로 종료할 때까지 송신을 계속 함
-i 송신간격
송신 간격을 지정 (단위는 초)
디폴트는 1초

 

5-17 ping 커맨드가 사용하고 있는 프로토콜 : ICMP

 

5-18 IPv4의 환경에서 디폴트 게이트웨이를 설정했지만, 인터넷상의 서버에 액세스X. 경로 어딘가에 문제가 있는지 UDP 및 ICMP 패킷를 송신하여 조사하려고 한다. 실행 할 커맨드 : traceroute

-> traceroute : IP 패킷이 최종적인 송신처 호스트에 도착하는 경로를 トレース해 표시

traceroute가 패킷 송신에 사용하고 있는 프로토콜을 UDP

송신처 호스트에 IPv6 어드레스를 사용할 경우 traceroute6 커맨드 사용

 

5-19 어느 호스트에서 TCP 포트 58765가 접속대기상태이지만, 이 포트를 어떤 프로세스가 오픈하고 있는지 불명. 프로세스를 특정하기 위한 커맨드

: netstat, lsof

-> lsof : 프로세스에 따라 오픈하고 있는 파일의 일람을 표시

-i
오픈하고 있는 인터넷 파일과 프로세스를 표시
-i:포트번호 혹은 -i:서비스명 으로 지정 가능
-p 프로세스ID
지정한 프로세스가 오픈하고 있는 파일을 표시
-P
포트번호를 서비스명으로 교환하지 않고 수치 그대로 표시

 

5-20 네트워크 인터페이스카드 eth0의 어드레스를 192.168.1.1에 설정하기 위해 사용하는 커맨드

: ifconfig eth0 192.168.1.1

-> ifconfig : 네트워크 I/F의 설정, 표시를 하는것이 가능

 

5-21 ip 커맨드에 대한 설명

: 네트워크 인터페이스의 표시와 설정을 진행

루틴 테이블의 표시와 엔트리의 추가와 삭제를 진행

-> ip : ifconfig 커맨드를 대신하는 새로운 커맨드

ip link set {up | down} dev 인터페이스명
네트워크 인터페이스의 up 및 down를 진행
ip link set dev 인터페이스명 {up | down}
up 및 down을 말미에 붙이는 것도 가능
ip addr {add | del} IP 어드레스 / プレフィックス dev 인터페이스명
네트워크 인터페이스의 IP 어드레스의 추가 혹은 삭제
ip addr show [인터페이스명]
네트워크 인터페이스의 IP 어드레스를 표시
ip route {add | del} 宛先 via 게이트웨이
루틴 테이블의 엔트리의 추가와 삭제
ip route {add | del} default via 게이트웨이
ip route del default
디폴트 루트의 엔트리의 추가와 삭제

 

5-22 네트워크 172.16.0.0에 있는 어느 호스트에서 네트워크 어드레스 172.17.0.0, 넷마스크 255.255.0.0을 宛先로 하는 패킷을 게이트웨이 172.16.255.254에 보내는 루틴 테이블의 엔트리를 추가 하고 있다. 실행 해야하는 커맨드 (네트워크 I/F는 eth0만 있는 것으로 함)

: route add -net 172.17.0.0 netmask 255.255.0.0 gw 172.16.255.254

-> -net : 宛先를 네트워크로 하기

-host : 宛先를 호스트로 하기

netmask : 宛先가 네트워크일 때, 宛先 네트워트의 넷마스크를 지정

gw 게이트웨이 : 도달가능한 다음의 송신처로 하는 게이트웨이

 

5-23 외부 네트워크와 내부 네트워크를 접속하는 루터에 eth0, eth1의 네트워크 인터페이스가 올바르게 설정되어 있다. 또 루틴 테이블도 올바르게 설정되어 있지만, 루틴이 진행되지 않는다. 패킷의 フォワーディング가 진행되지 않는 가능성이 높기 때문에 그것을 확인하기 위해서 다음의 파일을 확안하고 싶다.

: cat /proc/sys/net/ipv4/ip_forward

 

5-24 디폴트 게이트웨이로서 172.16.255.253을 추가하는 커맨드

: route add default gw 172.16.255.253

 

5-25 디폴트 루트에 대한 설명

: 루틴 테이블의 어느 엔트리에도 일치 하지 않을 때에 참조 된다.

 

5-26 netstat -nr 커맨드를 실행했더니 이하의 표시 항목을 얻었다. 이 호스트에서 송신되어진 패킷의 송신처에 대한 설명

: 192.168.2.1宛의 패킷은 eth0에서 192.168.2.2에 송신되어진다.

10.0.0.1 宛의 패킷은 wlan0에서 디폴트 루트 192.168.179.1에 송신되어진다.

 

-> netstat -nr, route -n과 같이 -n 옵션을 부여하여 실행시에는, Destinaion이 0.0.0.0로 표시 되는 것이 디폴트 루트

 

5-27 루틴 테이블에 디폴트 게이트웨이 172.17.255.254의 엔트이가 있다. 이 엔트리를 삭제하기 위한 커맨드

: route del default gw 172.17.255.254

route del default

ip route del default

 

5-28 네트워크 인터페이스의 수신 패킷수, 수신 바이트수, 송신 패킷수, 송신 바이트수를 표시하는 커맨드

: ifconfig eth0

ip -s link show dev eth0

-> ifconfig에서 표지하지만, ip 커맨드에 -s link show 옵션으로 표시 가능

 

5-29 NetworkManager에 대한 설명

: 네트워트 I/F의 자동설정이 가능

디폴트 루트의 자동설정이 가능

 

5-30 nmcli의 제 1인수로서 지정하는 것

: device, connection, general

-> nmcli : NetworkManager의 제어를 진행하는 커맨드라인 툴

nmcli [옵션] {device | connection | general | networking} [커맨드] [인수]