centos7 책 이론+실습 기록 ..#1
NIC
= LAN 카드, LAN 어댑터, LAN 포트, 네트워크 카드
- 네트워크 인터페이스 카드
- 메인보드에 포함된 카드
MAC Address
- NIC와 같은 네트워크 장치에 부여된 고유 번호
- 6byte
- LAN 내부에서 네트워크 장치를 식별하는데 사용
bit (binary digit)
- 컴퓨터 용량이나 처리 능력의 가장 작은 단위
- 0, 1 값을가짐
패킷
- 네트워크를 통해 전송될 데이터를 분할하고 데이터를 붙여 보낼 수 있게 만든 것.
TCP/IP
- 오늘날 컴퓨터 네트워크에서 대부분 이더넷을 사용해서 물리적으로 접속하는데, 이더넷에서 컴퓨터끼리 통신 할 수 있게 해주는 장치가 바로 TCP/IP 프로토콜(통신 규약)
- LAN 안에도 윈도, 맥, 리눅스 등 다양한 이기종 컴퓨터가 연결되어 있음.
이러한 이기종 컴퓨터 사이의 통신을 위해 정한 공통 프로토콜이 TCP/IP
루프백 주소
- 동작 테스트를 하거나 자신을 상대로 통신할 때 사용하는 특수 IP 주소
- 보통 127.0.0.1을 사용
사설 IP 주소
- LAN 내부의 컴퓨터의 IP 주소 중복을 방지하기 위해 사용하는 주소
- 클래스 A : 10.0.0.0 ~ 10.255.255.255
- 클래스 B : 172.16.0.0 ~ 172.31.255.255
- 클래스 C : 192.168.0.0 ~ 192.168.255.255
★ 가정이나 소규모 기업 인터넷 공유기는 보통 LAN IP 주소에 192.168.0.1 (또는 192.168.1.1)을 할당함.
---> 192.168.0.0 , 192.168.1.0 은 네트워크 주소이기 때문에 할당 X
** 공인IP / 사설IP /유동IP / 고정IP 구분
- 모두 ip를 부르는 말이지만 ip 숫자 및 ip를 지정하는 방식에 따라 차이가 있다.
- 공인 ip와 사설 ip는 전체 ip 중에서 전세계 공통적으로 사용하는 방식이냐, 개인적인 네트워크망에서 사용하는 방식이냐에 따라서 ip의 이름을 구분한 것이다.
- 고정 ip와 유동 ip는 전체 ip 중에서 직접 지정해서 사용할지, 자동으로 ip를 설정해서 사용할지를 구분하는 것이다.
- 공인ip/사설ip = ip 구분 이름
고정ip/유동ip = ip 지정 방식
Classless
- IP 주소를 낭비 없이 사용하고자 클래스에 구애받지 않고 네트워크를 할당하는 방법
- 받아서 자유롭게 설정
- ex) RIP version1(classful) , 2(classless)
NAPT (Network Address Port Translation)
- NAT 확장 기술
- 통신 시 사용하는 포트번호 정보를 주소 변환 시 함께 사용하여 공인 IP 1개를 LAN 안의 여러 컴퓨터가 함께 쓸 수 있게 해줌.
- 사설 IP 주소를 할당받은 여러 컴퓨터가 공유기(게이트웨이)를 통해 인터넷에 동시 접속 가능!
리눅스 네트워크 설정하기
- NIC 드라이버를 적절하게 설치하는것부터 시작!
- CentOS에는 udev라고 하는 하드웨어 자동 인식 기능이 있음.
- 리눅스를 지원하는 NIC이면 설치 시에 혹은 시스템을 재시작할 때 자동으로 NIC을 인식하여 드라이버를 설치하므로 다른 작업 없이 바로 네트워크를 사용할 수 있음.
- NIC를 인식하고 물리적으로 네트워크에 연결해도 IP 주소 등 접속에 필요한 정보를 설정하지 않으면 통신 X
인터넷에 서버 공개 준비하기
- 인터넷 호스트 -> LAN 내부 운영 중인 서버로 바로 접근 X
- why?
1. 인터넷 공유기가 외부 접근을 차단함.
--> 인터넷 공유기에는 IP 패킷 중계 기능이 있긴하지만, LAN 안에서 서버가 어떤 IP 주소를 사용하는지 알 수 없기 때문에 패킷 중계를 부탁할 수가 없고, 반대로는 보안 문제로 이어질 수 있기 때문에 기본적으로 기능이 꺼져있음!
2. 공인 IP 주소가 바뀜
--> ISP가 할당한 공인 IP 주소가 정기적으로 혹은 접속할 때마다 변경되기 때문에 접근 X
-->> 고정 공인 IP 주소로 운영한다면 이 문제는 발생하지 않음!
따라서, 서버를 인터넷에 공개하려면
- 포트 포워딩 설정하기
- 서비스의 종류를 판단하는 데 사용되는 '포트 번호'를 활용하는 방법
--> 포트번호란 '서비스 종류'를 설정하고자 사용하는것 (=회사의 내선 번호와 비슷한 개념)
ex) FTP = 20, 21
SMTP = 25
HTTP = 80
Well-Known port
20 | FTP(데이터 송수신용) |
21 | FTP(제어용) |
22 | SSH |
23 | TELNET |
25 | SMTP |
53 | DNS |
80 | HTTP |
110 | POP3 |
123 | NTP |
132 | IMAP |
443 | HTTPS |
587 | SMTP 대체(일반적으로 서브미션이라 부름) |
root의 홈 디렉터리 : /root
일반 사용자 홈 디렉터리 : /home/weeding
GUI -> CLI
- ctl + alt + F2
CLI -> GUI
- ctl + alt + F1
** 명령어의 실체는 파일
- 명령어는 특정 기능을 처리하는 프로그램
- 마치 워드로 문서를 작성하고 저장할 때 생성되는 파일과 같음.
즉, ls 명령어를 친다하면 /bin 폴더 안에 있는 ls라는 파일이 실행되는 것임! - 그러나, cd와 같이 셸에 내장된 명령은 따로 파일이 없을 수도 있다.
경로(path)
- 파티션 내의 파일이나 디렉터리의 위치를 나타내는 문자열
- / : 최상위(루트)디렉터리
- ./ : 현재 작업 중인 디렉터리
- ../ : 현재 작업 중인 디렉터리의 상위 디렉터리
- ~/ : 현재 로그인 중인 사용자의 홈 디렉터리
기본 명령어들
- touch : 파일만들기
- 만들 파일 nano로 들어가서 파일 안에 내용 입력해주고 나와서
- cat으로 조회해봄
1일차 정리 끝.