서비스
네트워크 관련 서비스
[ Cent OS 6 ] : init 프로세스 사용 [ Cent OS 7 ] : systemd 프로세스 사용
service [데몬명] start systemctl start [데몬명]
service [데몬명] restart systemctl restart [데몬명]
service [데몬명] stop systemctl stop [데몬명]
service [데몬명] status systemctl status [데몬명]
chkconfig [데몬명] on/off systemctl enable/disable [데몬명]
얘네들이 기능은 쉽게 생각하면 껐다 켰다 하는 것
데몬명 : 서버 프로그램의 이름이다. 각 서비스의 이름
데몬명에 따라 d가 붙은 안붙은 애들이 있다. 안붙은 애들은 현재에선 잘쓰진 않는다.
서비스를 동작시킬 때 기존에 있는 기능에 종속되서 실행되는 프로세스이다.
독립적으로 실행이 아닌 부가적인 기능으로 실행되는 느낌
d가 붙는 애들은 독립형 서비스라고 한다. 메인급 프로세스가 제대로 올라오는 것, 요즘은 대부분 올라온다.
맨아래 있는 명령어는 시스템을 재부팅시 자동으로 실행되게 하는지
네트워크 서비스
yum -y install net-tools를 입력 해서 Net-tools를 설치
- ifnonfig와 같은 네트워크 명령어를 쓰기 위해서 설치함
강사님이 네트워크 관련 세팅을 한다고 하면 NetworkManager를 많이 씀 IP세팅 , 부가적 세팅을 할 때 자주쓰는 서비스
CLI환경에선 문제없다. 대신 GUI에선 오류가 발생할 수 있음
네트워크 관련 간단한 명령어
ifconfig는 인터페이스 목록 확인 가능
ifconfig 뒤에 ens32를 하면 ens32를 자세히 확인할 수 있다.
ifconfig ens32 [up/down]중 하나를 쓰게 된다면 인터페이스 연결/단절이다.
ifconfig ens32 192.168.1.200 netmask 255.255.255.0 broadcst 192.168.1.255
이렇게 치게 되면 임시로 IP주소를 바꾸는 명령어이다. 임시기 때문에 따로 설정을 해줘야함/ 데몬을 껏다키면 본 주소로 환원된다,테스트 용도
nmcli는 네트워크 콘솔도구
nmcli dev - ifconfig해서 확인했던 애를 네트워크로 전체 인터페이스 목록을 확인하는 것이다.
nmcli conn - 실제 연결되어있는 연결중인 인터페이스 목록
nmtui를 하면 네트워크 세팅 화면이 나온다
연결편집 들어가면 이런식으로 연결되어있는 것들을 설정할 수 있다.
내가 원하는 IP설정 을 할 수있다.
이걸 할 줄알면 네트워크 관련 인터페이스 설정 다 할수 있다.
vi /etc/sysconfig/network-scripts/ifcfg-ens32으로도 할 수 있지만 nmtui가 너무 편하기 떄문에 이걸 사용함
nmtui를 쓸수없는 환경이라면 cd /etc/sysconfig/network-scripts/로 와서 직접 작업을 한다.
이곳이 if 명령어 관련이 들어있음
vi /etc/ens32 내용
네트워크를 추가를 했는데 확인이 안된다면 ens32의 내용을 복사해서 원하는 설정대로 ens33를 만들어서 복붙면 된다.
실질적으로 편집해야하는 부분은 빨간색 박스인 밑에 부분밖에 없다.
route -n는 라우팅테이블 확인할 때 사용함
외부통신이 안될 땐 라우팅테이블부터 확인함 그리고 vi /etc/sysconfig/network-scripts/ifcfg-ens32, nmtui로 함
그렇게 확인 다 하고 나면 systemctl restart network로 재부팅해서 올라오는지 다시 확인해본다.
그래도 안되게된다면 route del default gw 192.168.1.2로 수동으로 삭제해주고
route add default gw 192.168.1.2로 다시 연결해주고 핑을 확인해본다.
핑을 확인해보는 ping 8.8.8.8 때는 컨트롤C로 끊어줘야 계속 보내지않음
arp -a를 하면 전체 IP주소 MAC주소 확인 가능
스태틱 설정 희망시 arp -s [IP] [MAC] , 내가 추가했었던 스태틱 삭제는 arp -d [IP]로 가능함
netstat -antp
이 옵션을 제일 많이 씀
a옵션은 모든 포켓정보를 출력할꺼다.
n옵션은 10진수로 출력할꺼다.
t옵션은 tcp연결정보만 출력할꺼다. t옵션을 빼면 TCP,UDP 둘다 나옴
p옵션은 프로세스 아이디와 프로세스 이름도 출력한다.
netstat -antp | grep LISTEN
이건 LISTEN만 보는 것
LISTEN이 연결대기중
netstat -antp | grep ESTABLISHED
이건 ESTABLISHED만 보는 것 ,
ESTABLISHED는 연결된 사용자
[실무팁]
확인하기 위해서 netstat -antp를 쳐서 관련 주소에
LISTEN이 안올라온다면 클라이언트가 접속이 안된다.
LISTEN이 오라오는데 클라이언트 접속이 안된다면 방화벽문제이다.
방화벽도 되는 클라이언트 접속이 불가하다면 네트워크 엔지니어를 찾아야한다.
아이피바인딩 ( IP-Binding )
ifconfig ens32:0 192.168.1.101
ifconfig ens32:1 192.168.1.102
NIC에 IP주소를 여러개 할당하고 싶을 때 사용하는 것 이것도 임시로 만드는것이다.
이 설정을 영구적으로 하는 법은 /etc/sysconfig/network-scripts/에서 ifcfg-ens32:*을 만들고 설정내용을 복붙한다.
채널 본딩 ( Channel-Bonding )
- 채널 본딩이란 여러 개의 네트워크 인터페이스 카드장치를 하나로 묶어 단일 Channel 형식으로 운영하는 것을 말 한다.
- 채널 본딩을 구현 할 경우 Fault Trolerance 환경을 구축할 수 있으며,
네트워크 인터페이스에 대한 Redundancy 를 구현할 수 있다.
- Fault Tolerance란 한쪽 장치에 문제가 발생하더라도 반대쪽 장치에서 그 기능을 온전히 수행 하므로,
전체 시스템 운영에는 문제가 발생하지 않는 환경을 말한다.
- 부하도가 많은 장치의 경우 채널 본딩을 통한 네트워크 트래픽에 대한 Load Balancing을 구현 할 수 있다.
- Mode 0 Balance-rr ( Round Robin )
Load Balancing 구현 가능, 전체 NIC에 대한 순환 통신을 진행하고, 데이터 전송시에만 부하분산 지형 ("Default 값")
Mode 1 Active-Backup
Faulover, bond 내의 하나의 NIC만 통신, Main에 문제가 발생 했을 경우 대체 NIC가 통신을 수행 ( "부하분산 없음" )
Mode 4 802.3ad(LACP)
Failover, 동적 부하분산, NIC 대역폭 확장 토신 ( IEEE 802.3ad를 지원하는 스위치와 연결되어있을 경우 사용 가능 )
Mode 5 Balance-tlb
Load Balancing, 부하도가 낮은 NIC를 이용하여 통신, 송신에 대한 부하분산만 진행
Mode 6 Balance-alb
Mode 5의 기능 + 수신에 관한 부하분산도 함께 진행
VMware에서 네트워크 어댑터를 2개 더 생성시켜준다.
ifconfig ens34 down
ifconfig ens35 down
ens34와 ens35를 다운시켜준다.
*만약 ens34와 ens35안에 파일이 있을경우 다운시키기전에 백업을 해야한다.
mkdir /backup
cd /etc/sysconfig/network-scripts
mv ifcfg-ens32 ifcfg-ens34 /backup
ls -l /backup
만약 백업이 필요할 때 명령어
nmcli con add type bond con-name bond0 ifname bond0 mode active-backup ip4 192.168.1.101/24
-묶기위한 bond0를 생성하면서 IP를 추가하는 명령어
nmcli con mod id bond0 bond.options mode=active-backup,miimon=100
-bond0에 옵션 추가
# bond0 장치의 Bonding Option 정의
# mode : Channel_Bonding Mode 정의
# miimon : 0.1초 단위의 모니터링 수행 ( Main 인터페이스에 문제가 있는지 확인 )
nmcli conn
-확인
nmcli conn de "유선 연결 1"
nmcli conn de "유선 연결 2"
-유선 연결이라고 되어있는 이름을 삭제
nmcli conn
-확인
nmcli conn add type bond-slave ifname ens34 con-name ens34 master bond0
nmcli conn add type bond-slave ifname ens35 con-name ens35 master bond0
- ens34와 ens35를 bond0에 묶는다.
vi /etc/sysconfig/network-scripts/ifcfg-bond0
안에 들어가서 GATEWAY=192.168.1.2로 설정
저장하고 나옴
route -n
-확인
route del default gw 192.168.1.2
기본 게이트웨이 설정을 삭제
route -n
-확인
systemctl restart network
삭제되었으니 재시작하면서 확인
route -n
삭제된것을 확인
[ TEST ] : Terminal 2개 활성화 후 테스트
1. Terminal 1번 : ping 8.8.8.8
2. Terminal 2번 : watch -d -n 1 "cat /proc/net/bonding/bond0"
3. Main으로 사용되는 인터페이스를 VMware에서 오른쪽 아래에 중지상태로 변경
4. Backup 인터페이스가 활성화되며, 지속적인 통신이가능한 상태인지 확인한다.
5. 중지 상태인 인터페이스를 활성화 시키고 현재 Main으로 사용되는 인터페이스를 중지시키면
전에 있던 Main 인터페이스가 다시 올라오는지 확인
'학원' 카테고리의 다른 글
2023/06/21(예비군) Firewald (0) | 2023.06.23 |
---|---|
2023/06/20(예비군) 방화벽, IPtables (0) | 2023.06.23 |
2023/06/16 LVM (0) | 2023.06.16 |
2023/06/15 디스크 (0) | 2023.06.15 |
2023/06/14 Shell Script (0) | 2023.06.14 |