네트워크 설정 명령어
* 툴 종류
(CLI) : 작업속도가 떨어짐
(TUI) : 엔지니어들이 많이 쓰니까 이 방식에 익숙해지자
(GUI) : 보기 좋으니 고객한테 보여줄때 활용
*IP/NET -> ifconfig, ip address
* GW -> netstat -nr, ip route
* DNS -> cat /etc/resolv.conf
(주의) 수동으로 편집하지 말고 위 툴을 활용해 편집해야 한다.
아니면 일회성으로만 적용됨.
# ifconfig 활성화 되어있는 것만 보여줌
# ifconfig -a 비활성화 되어있는 것도 보여줌 ( 활성화 되어 있는것은 UP이라고 표시되어 있음)
# ip address
(정리) 네트워크 설정 확인 순서
(ㄱ) 물리적인 연결 확인
# ethtool eth0
(ㄴ) IP/Netmask 확인
# ifconfig
(ㄷ) defaultrouter 확인
# netstat –nr
(ㄹ) DNS 클라이언트 설정 확인
# cat /etc/resolv.conf (# cat /etc/host.conf, /etc/nsswitch.conf)
네트워크 설정 확인 방법
* IP/NET: # ifconfig, # ip address
* GateWay: # netstat -nr, # ip route
* DNS: #cat /etc/resolv.conf
[주의] CentOS 7.x 는 /etc/resolv.conf에서 직접 바꾸지 않고
NetworkManager 체계를 사용하여 바꾼다.
네트워크 설정 툴
* 잡식
connection(profile) name은 설정 전체의 묶음 : 이름 바꿔도 됨
디바이스는 장치 이름 : 디바이스 이름은 함부로 바꾸면 안된다
* IPv4 설정
automatic(DHCP 방식) : 동적
manual : 정적 / 직접 설정
Netmask : 표기법이 두개 : 255.255.0.0. / 24
1) nm-connection-editor (잘 안쓰는 방식)
설정파일을 통해 편집한 설정 내용은 반드시 메모리에 올려줘야 적용이 된다!
# nmcli connetction up ens33 적용 커맨드
2) nmtui (제일 많이 사용되는 방식)
#nmtui
# nmcli connetction upens33 : 적용!
3) nmcli CMD (숙달전까진 속도가 매우 떨어짐)
장치하고 커넥션 부분 두 가지만 확인할 줄 알면 된다.
# nmcli <TAB><TAB>
# nmcli device <TAB><TAB>
# nmcli device status
# nmcli device show
# nmcli device show ens33 : 물리적인 설정이 어떻게 연결되어 있는지 확인
# nmcli CMD connection <TAB><TAB>
# nmcli connetction show : 커넥션 관점에서 디바이스를 바라본다
# nmcli connection show ens33 | grep ipv4
# nmcli connection modify ens33 \ 기존에 부여된 것을 수정할 때 사용
ipv4.addresses 172.16.6.1xx/24 \
ipv4.gateway 172.16.6.254 \
ipv4.dns 168.126.63.1
# nmcli connetction up ens33 : 적용!
IP 변경 실습
1) nm-connection-editor 툴 사용
# nm-connection-editor &
Ipv4 주소 변경 172.16.6.2xx -> 172.16.6.1xx
# cat /etc/sysconfig/network-scripts/ifcfg-ens33
# ifconfig ens33 : 확인해보면 그대로임.
파일만 적용되고 메모리에는 적용 안됨
# nmcli connection up ens33 : 적용!
# ifconfig ens33 : 확인
2) nmtui CMD
# nmtui
새 ethernet 만들기 : ens33_new
# ifconfig ens33
# nmcli device
# nmcli connetction
# nmcli connection up ens33_new
# nmcli device
# nmcli connetction
# ifconfig ens33
3) nmcli CMD 사용 원래 상태로 돌리기
* 작업할 것
ens33-new 삭제
ens33 :172.16.6.1xx -> 172.16.6.2xx
# ls /etc/sysconfig/network-scripts/ifcfg-*
# nmcli connection
# nmcli connection u ens33
# ifconfig ens33
# nmcli connection deleteens33_new
# ls /etc/sysconfig/network-scripts/ifcfg-*
# nmcli connection show ens33 | grep ipv4
Ipv4.addesses: 172.16.6.1xx/24
# nmcli connection modify ens33 ip4.address 172.16.6.211/24
# nmcli connection up ens33
or
[추가적인 실습] 파일 직접 수정할때 (간혹 엔지니어들이 이 방식을 사용하니 알고있자)
# vi /etc/sysconfig/network-scripts/ifcfg-ens33
IPADDR=172.16.6.149
# nmcli connection reload : 중요! 파일좀 다시 읽어 들여라
# nmcli connection up ens33 : 적용!
(복원) IP : 172.16.6.2xx
네트워크 작업 연습 시나리오
1) IP 변경 작업
# nmcli connection modify ens33 ipv4.addresses 172.16.6.1xx/24
# nmcli connection up ens33
or
nmcli connection add : 커맨드 작업시 꼭 help를 쳐보고 몇 가지 확인해야 한다
# nmcli connection addhelp
# nmcli connection add \
type ethernet \
ifname ens33 \ : 바꾸면 안됨 ( interface name)
con-name ens33_new \
autoconnection no \ ( 일반적으론 yes를 선택함)
ip4 172.16.6.2xx /24 gw4 172.16.6.254
# nmcli connection up ens33
# ifconfig ens33
방법은 여러가지지만가장 좋은건 nmtui
2) 새로운 카드 NIC ( Network interface card) 추가
ㄱ) systemd-udev.service
#systemctl list-unit-files | grep udev
# poweroff
ㄴ) network adaptor 추가
NAT 방식으로 설정
*bridged는 하나의 물리적 카드에 하나만 연결되게 만듬
(VM당 하나만 가능. 두장의 카드를 동시에 연결할 수 없음)
VM DHCP 서버 On
ㄷ) 재가동 및 로그인 후 확인
# ifconfig :두 장의 NIC 카드 설정되어 있는 상황. 하나는 bridged 하나는 NAT 방식이다
# ls /etc/sysconfig/network-scripts/ifcfg
# nmcli device
# nmcli connection
# nm-connection-editor &
Ethernet 탭 => Connection name 변경 (ens36) => Device 변경 (ens36 어쩌고 써있는것) =>
General autoconnection 체크 => ipv4 settings : 메뉴얼로 변경 / Address, Netmask 설정
gateway 안준다! 여러장의 NIC가 있는 경우 한쪽에만 있어야 하기 때문!
# ls /etc/sysconfig/network-scripts/ifcfg-* : 확인
/etc/sysconfig/network-scripts/ifcfg-ens33
/etc/sysconfig/network-scripts/ifcfg-ens36
/etc/sysconfig/network-scripts/ifcfg-lo
# nmcli connection up ens36 : 메모리에 올리기
# cat /etc/sysconfig/network-scripts/ifcfg-ens36
* 장애처리를 위해 여러가지 방식을 알아두는게 좋다!
Ether Channel Conding
두 장 이상의 NIC 카드를 묶어서 하나로 만들어 사용하는 작업
제공기능 :
fail over 장애처리기능과
load balancing 부하 분산으로 성능을 높이는 용도
Teaming 설정
[실습] 두 장의 카드를 하나처럼 운영해 써보자!
ens33(team0-port1) ----+----team0(192.168.10.100)
|
ens36(team0-port2) -----
[전제 조건]
* NIC 카드 최소 2장 필요 (# ifconfig CMD로 확인)
* 같은 Switch에 연결되어 있어야 함 (NAT Device - 2장 모두 연결)
* 두 카드 모드 NAT 방식으로 변경
* 두 카드는 반드시 disconnect 되어 있어야 하고 설정은 없는 상태로 변경
[전제 조건 작업]
# cd /etc/sysconfig/network-scripts
# ls
* 확인 후 켜져있다면 강제로 종료시켜야 한다.
* 참고
# nm-connection-editor & 들어가 하나 삭제를 하면
삭제해도 DHCP 서버에서 새로 만들어 준다.
그래서 default 값으로 새로 생긴 카드를 찾아 disconnect 해야한다.
삭제할때는 disconnect 하고 delete
# nmcli device disconnect ens33
# nmcli device disconnect ens36
# nmcli connection delete ens33
# nmcli connection delete ens36
# nmcli device : disconnected 확인하기
# nmcli connection : 장치 이름이 없어야 한다
[teamming 작업]
# nmcli connection add help : 무엇이 필요한지 구성내용 확인
만드는 CMD
# nmcli connection add \
type team \
ifname team0 \
con-name team0 \
config '{"runner":{"name":"activebackup"}}' : 제이슨 포멧 형식
(용어)
* activebackup:failover runner 로 데이터 전송을 위한 링크를 감시하고 active port를 선택한다.
실무 및 일반 서버에서는 가장 많이 사용되는 방식. 2장 사용시 사용.
* loadbalance :트래픽을 모니터링하고 패킷 전송에 대한 포트를 선택할 때 완벽한 균영에 도달하기 위해
hash function을 사용한다. 서버쪽에서만 설정. 4장 이상 카드 사용시 사용. 하나 죽으면 나머지 3개가 대신함
* lacp : 802.3ad(LACP) 고르게 부하 분산을 하기 위해 Switch에서 이 기능이 켜져 있어야 한다.
링크통합제어프로토콜 가장 좋은 방식으로 loadbalance runner와 동일한 전송 포트를 선택한다.
4장 이상 카드를 사용시 사용.
* broadcast :Simple runner로 모든 포트로 각각의 패킷을 전송한다. 효율은 가장 떨어지는 방식 (안씀)
* roundrobin :Simple runner로 각 포트에 라운드 로빈 방식으로 각각이 패킷을 전송한다.
ㄱ) team0 인터페이스 생성 및 IP 설정
# nmcli connetction show team0 | grep ipv4
#nmcli connection modify team0 \
ipv4.method manual \
ipv4.address 192.168.10.100/24 \
ipv4.gateway 192.168.10.2 \
ipv4.dns 168.126.63.1 \
ipv4.dns-search example.com
autoconnect yes ( 따로 설정 안하면 자동 설정)
ㄴ) team0 인터페이스 맴버 구성 속성 정보 변경
# nmcli connection add \
con-name team0-port1 \
type team-slave \
ifname ens33 \
autoconnect yes \
master team0
# nmcli connection add \
con-name team0-port2 \
type team-slave \
ifname ens36 \
autoconnect yes \
master team0
# nmcli connection up team0 : 메모리에 올리기!
# teamdctl team0 state 확인을 위해 입력했는데 안 나올경우 아래 커맨드 입력
# systemctl restart NetworkManager (안올라올경우)
# teamnl team0 ports
# nmcli device
# nmcli connection
# ifconfig
# netstat -nr
ㄷ) 확인 작업
# cd /etc/sysconfig/network-scripts
# ifcfg-*
각 파일들 내용 확인
# cat team0
# cat team-port1
# cat team-port2
ㄹ) 실습
* 선수작업 : HostOS firewall 설정 OFF(firewall.cpl)
* ping 테스트
: window에서 cmd 열고
: C:\> ping 192.168.10.100 -t (-t는 반복하라는 옵션)
* putty 연결
: HostOS에 putty 설치 & 연결 (192.168.10.100)
: root 로그인
# while true
do
echo "-------$(date)-----"
ls
sleep 2
done
(On linux)
# teamdctl team0 state
-> active port 확인후 (ens33)
# nmcli device disconnect ens33
-> putty 창과 CMD 창의 ping테스트를 해보고 이상이 없다는 것을 확인
-> 여기서 연결 끊어져서 아래 진행 안된다. 가상 환경이라 그런건지 원인확인 해야함.
# nmcli device connect ens33 재연결 하면 자동으로 돌아오는지 확인
# teamdclt team0 state
[복원 (지우는 작업)]
ㄱ) Teaming 삭제
# teamdctl
# teamdctl team0 state
# teamdctl team0 port remove ens33
# teamdctl team0 port remove ens36
# nmcli connection delete team0
# nmcli connection delete team0-port1
# nmcli connection delete team0-port2
ㄴ) 네트워크 설정 초기로 되돌리는 작업
# ls /etc/sysconfig/network-scripts
# nmcli connection
# nmcli device
#nm-connection-editor &
설정 후 up 하기전에 세팅 들어가서 인터넷 연결 방식 확인해주고
# nmcli connection up ens33 /36
확인작업
# ifconfig
# netstat -nr
# cat /etc/resolv.conf
# nsloolup www.daum.net
[참고] 호스트명 바꾸는 CMD
# hostnamectl set-hostname linux211.example.com
DNS
bind 설치
'정보보안공부 > 정보보안전문과정' 카테고리의 다른 글
모의해킹 침해대응 정보보안 전문가 양성과정 Day17 (0) | 2020.09.24 |
---|---|
모의해킹 침해대응 정보보안 전문가 양성과정 Day16 (0) | 2020.09.23 |
모의해킹 침해대응 정보보안 전문가 양성과정 Day14 (0) | 2020.09.21 |
모의해킹 침해대응 정보보안 전문가 양성과정 Day13 (0) | 2020.09.19 |
모의해킹 침해대응 정보보안 전문가 양성과정 Day12 (0) | 2020.09.17 |