< 네트워크 모듈 설정 >
랜카드를 새로 구입한 경우, 리눅스 설치시 랜 카드가 자동으로 인식되지 않은 경우 ---> 랜카드 모듈을 커널에 적재
리눅스에서 관리하는 모듈(커널에 끼우는 블럭)에 관련된 명령어
- modprobe [모듈명] : 커널에 지정한 모듈을 적재함
- lsmod : 커널에 올라간 모듈 리스트 출력
- rmmod [모듈명] : 커널에 올라가 있는 모듈을 내림
시스템 부팅 시 자동으로 모듈이 올라가도록 etc/modprobe.conf 파일에 모듈을 eth0 라는 이름으로 alias 설정.
alias eth0 랜카드모듈명
< 네크워크 정보 설정 >
(1) 호스트 이름
- /etc/sysconfig/network
네트워크 설정 정보를 저장하는 파일로 네트워크 현재 상태, 호스트 이름, 게이트웨이 주소가 저장되는 파일
- /etc/hosts
인터넷의 초기부터 사용되던 파일로 IP 주소와 호스트 이름을 매핑하는 파일.
이 파일에 호스트 이름을 IP 주소와 함께 등록하면, 자신 또는 원격지 호스트로의 접속을 IP 주소가 아닌
호스트 이름으로 할 수 있음.
(2) 네트워크 인터페이스
- /etc/sysconfig/network-script/디렉토리(ex : ifcfg-eth0)
랜카드 개수 만큼 디렉토리가 있음.
(3) 도메인 주소
- /etc/resolv.conf
DNS 서비스를 수행하는 서버의 위치 정보를 설정하는 파일.
최대 3개의 DNS 서버의 IP 주소를 넣을 수 있음.
자신이 속한 도메인을 관리하는 네임서버를 첫 줄에 설정, 나머지는 잘 알려진 네임서버를 설정.
- /etc/host.conf
호스트 이름에 대한 IP 주소를 검색할 때 /etc/hosts 파일에서 먼저 검색할 것인지 네임서버(bind)에게 먼저 요청할 것인지
우선 순위를 설정하는 파일.
(4) 게이트웨이
- 같은 호스트 내부에서 패킷을 전송하는 경우 -> 직접전송
- 외부 네트워크로 패킷을 전송하는 경우 -> Default Gateway 에게 전달
- /etc/sysconfig/network
< 네트워크 데몬 실행 >
네트워크 설정 사항 변경 ----> 네트워크 서비스 프로그램 재구동 ----> 변경된 설정 내용 적용
-> 네크워크 서비스 프로그램(/etc/init.d/network) 사용 방법
(1) 네트워크 서비스 프로그램 실행
- /etc/init.d/network start
(2) 네트워크 서비스 프로그램 재실행
- /etc/init.d/network restart
(3) 네트워크 서비스 프로그램 종료
- /etc/init.d/network stop
2. 리눅스 네트웨크 관리 명령
< 네트워크 인터페이스 관리 명령 >
(1) ifconfig
- 네트워크 인터페이스 확인 : ifconfig
현재 사용 가능한 모든 네트워크 인터페이스의 정보를 확인할 수 있음
- 네트워크 인터페이스 종료 : ifconfig [interface_name] down
현재 구동중인 네트워크 인터페이스의 구동을 중지시킴
- 네트워크 인터페이스 구동 : ifconfig [interface_name] [IP_Address] up
네트워크 인터페이스에 IP 주소를 할당하여 구동 가능, IP 주소 테스트시 많이 사용
(2) route
- 호스트들은 목적지로 패킷을 전송하기 위해 자신의 라우팅 테이블을 확인하고 어디로 패킷을 전달해야 할지 결정
- route 명령어는 라우팅 테이블 내용을 확인 및 수정할 때 사용함
- 라우팅 테이블 확인 : 옵션없이 route
- 라우팅 테이블 수정
라우팅 정보 삭제 : route delete [default gw gateway-IP] destination
라우팅 정보 추가 : route add [default gw gateway-IP] destination
(ex : route add default gw 192.168.10.1 eth0)
< 도메인 관리 명령 >
(1) nslookup
- nslookup, dig : 도메인 서비스가 잘 구동되는지 확인할 때 사용하는 명령어.
- nslookup은 로컬 DNS 서버에 특정 호스트의 IP 주소나 호스트이름을 질의하는 명령.
- 네임서버이 문제 해결을 위해 많이 사용.
- 명령어 뒤에는 검색할 호스트이름 또는 IP주소를 넣을 수 있음.
- 주소검색 : nslookup [호스트이름 또는 IP 주소]
DNS 요청을 처리해준 로컬 네임서버의 IP주소와 네임서버가 사용하는 포트번호, 응답결과로 해당 호스트의
이름과 IP 주소.(168.126.63.1 - KT의 네임서버)
(2) dig(Domain Information Groper)
- nslookup과 같이 원격지 호스트의 IP 주소나 호스트 이름을 네임서버에게 질의하는 명령.
- dig 명령은 임의의 네임서버에게 질의를 보냄.
dig -x [IP Address] : 특정 IP를 사용하는 호스트 이름 요청.
dig [@NameServer] domain [Query_type] [Query_class]
- Name Server : DNS 요청을 수행할 네임서버
- Domain : 정보를 요청하고자 하는 도메인 이름
- Query_tyep
a : 네트워크 주소
any : 특정 도메인에 대한 모든 정보
mx : 도메인 메일 서버
ns : 네임서버
soa : Zone 파일 상단의 authority 레코드
hinfo : 호스트 정보
axfr : Zone 파일 교환
- Query_class
in : 인터넷 클래스 도메인
any : 모든 클래스 정보
< 네트워크 진단 명령 >
(1) ping
- 네트워크 관리자들이 가장 많이 사용하는 명령
- 원격 컴퓨터에 TCP/IP 프로토콜 접속이 가능한지 알아보는데 사용
- ping [-c count] [-s packet_size] [-i time] [hostIP_Address]
ping -b broadcast
- ping 에 응답하지 않기
ping과 같은 ICMP 패킷이 DoS(Denial of Service) 공격으로 악용되면서 많은 네트워크 서버들이 ICMP 패킷에
응답하지 않고 무시하도록 설정.
방법 : /proc/sys/net/ipv4/icmp_echo_ignore_all 파일에 1값을 넣어줌.
(echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all)
위의 파일은 시스템 부팅시 생성되는 파일로 다음번 부팅 후에는 다시 0 값을 갖게되므로 항상 1값을 가져서
응답하지 않게 하려면 /etc/rc.local 파일의 제일 아래 라인에
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all 구문을 추가해 주어야 함.
(2) traceroute
- traceroute 는 현재 시스템에서 목적지 호스트까지 도달하는데 중간에 경유하는 라우터를 출력.
- 패킷이 목적지 호스트로 도달하지 못할 경우 어떤 라우터에서 문제가 발생했는지 추적하는 목적으로 사용.
(3) netstate
- netstate 명령은 네트워크와 관련된 다양한 정보를 보여주는 명령
- ifconfig, route와 같은 명령의 기능과 현재 연결되어 있는 모든 포트와 소켓에 대한 정보 제공
- netstate [옵션]
a : 모든 소켓의 정보를 보여줌.
c : 매 초마다 정보를 갱신하여 연결 상태를 지속적으로 보여줌.
i : 각 네트워크 디바이스에 대한 정보도 함께 보여줌.
r : 라우팅 테이블을 보여줌.
t : tcp 소켓에 대한 정보만 보여줌.
u : udp 소켓에 대한 정보만 보여줌.
(4) arp
- 네트워크를 통한 데이터 전송에서 가장 일반화된 작업 중 하나가 IP 주소를 이용해 MAC 주소를 찾는 기능을 수행하는
프로토콜.
- ARP 테이블의 내용을 표시하고 정보를 수정할 때 사용
- arp [option] [hostIP]
a : 테이블내의 모든 arp 테이블 내용을 출력
d hostname : arp 테이블에서 해당 항목을 제거
s hostname ether-address : arp 테이블에서 새로운 항목을 추가
*VMware 실행 시
가상 머신 생성 후 Virture network editor 설정 해 주어야함. (게이트웨이 주소 일치)
'IT > 리눅스마스터1급' 카테고리의 다른 글
시스템 튜닝 (0) | 2018.01.16 |
---|---|
네트워크 파일시스템(NFS) (0) | 2018.01.16 |
tcpdump 명령어 (0) | 2018.01.16 |
FTP명령어 (0) | 2018.01.16 |
iptables 설정 및 옵션 (0) | 2018.01.16 |