2014년 1월 26일 일요일

Linux 네트워크 설정경로 및 명령어

■ 네트워크 인터페이스(NIC, ethernet) 설정파일

# cat /etc/sysconfig/network-scripts/ifcfg-eth0

# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]
DEVICE=eth1
BOOTPROTO=static
IPADDR=172.16.8.25
NETMASK=255.255.0.0
ONBOOT=yes
HOSTNAME=localhost.localdomain
HWADDR=00:0c:29:a4:5b:88



■ DNS 설정파일 (DNS 서버를 설정)

# cat /etc/resolv.conf
; generated by /sbin/dhclient-script
search localdomain
nameserver 192.168.10.22

1차 네임서버, 2차 네임서버 입력 가능


네트워크 GUI 설정
system-config-network-tui


■ /etc/sysconfig/network 설정내용 (호스트네임[hostname] 설정과 기본 게이트웨이를 설정)
# cat /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=babo //서버명 기입
GATEWAY=192.168.10.22


IP alias 기능 (하나의 물리적인 메모리카드를 복제하여 여러개의 IP로 사용하는 기능)
[root@ajunews ~]# cd /etc/sysconfig/network-scripts

1. 물리적인 네트워크 환경파일을 복제
[root@ajunews network-scripts]# cp ifcfg-eth1 ifcfg-eth5

2. 복제한 네트워크 환경파일 내용 변경
[root@ajunews network-scripts]# vi ifcfg-eth5

DEVICE=eth1:1 <- :1="" :2...="" span="">
BOOTPROTO=static
ONBOOT=yes
IPADDR=172.16.50.252
NETMASK=255.255.0.0
HWADDR=00:0c:29:5f:b5:b4

[root@ajunews network-scripts]# service network restart
[root@ajunews network-scripts]# ping -c 4 172.16.50.252

PING 172.16.50.252 (172.16.50.252) 56(84) bytes of data.
64 bytes from 172.16.50.252: icmp_seq=1 ttl=64 time=0.035 ms
64 bytes from 172.16.50.252: icmp_seq=2 ttl=64 time=0.033 ms
64 bytes from 172.16.50.252: icmp_seq=3 ttl=64 time=0.036 ms
64 bytes from 172.16.50.252: icmp_seq=4 ttl=64 time=0.032 ms

하지만 외부에서 실 서비스용이 아닌 내부 모니터링용으로 사용한다.!


ifconfig /* 네트워크의 상황내역 확인 */
eth0 Link encap:Ethernet HWaddr 00:0C:29:A4:5B:88
inet addr:192.168.10.138 Bcast:192.168.10.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fea4:5b88/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:7470 errors:0 dropped:0 overruns:0 frame:0
TX packets:4789 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:921505 (899.9 KiB) TX bytes:698706 (682.3 KiB)
Interrupt:75 Base address:0x2000
① MAC 주소 : 00:0C:29:A4:5B:88
② eth0에 할당된 주소 : 192.168.10.138
③ 브로드캐스트(BroadCast) : 192.168.10.255
④ 서브넷마스크(Subnet Mask) : 255.255.255.0
⑤ MTU(Maxium Transfer Unit) : 최대 전송단위
⑥ RX Packets : 부팅후 현재까지 받은 패킷수
⑦ TX Packets : 부팅후 현재까지 보내어진 패킷수
⑧ Collisions : 충돌된 데이타가 있는지 확인
⑨ Interrupt 주소 : 75 번을 사용
⑩ 현재 UP(상태)

네트워크 이중화 Bonding 구성(이중화)
여러개의 NIC를 논리적으로 하나로 묶어 NIC 갯수만큼 대역폭을 가장하는 기술로 다른 말로 네트워크의 이
중화라고 한다.
- 네트워크를 이중화함으로써 한쪽의 NIC 문제 발생이 서비스 이용 가능
- NIC의 대역폭을 모두 이용 가능
[참고] 이중화 네트워크 카드는 같은 종류가 더욱 안전합니다.

<구성방법>
[조건] Network device support 에서 --> Bonding driver support 가 체크되어 있어야 한다.
① # /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=(실제호스트이름적을것)
GATEWAY=(게이트웨이아이피)
GATEDEV=bond0 <--- span="">
② 이중화 인터페이스로 사용할 가상 인터페이스 셋팅(ifcfg-bond0)
# /etc/sysconfig/network-scripts/ifcfg-bond0 <--- bonding="" nic="" span="" vi="">
DEVICE=bond0
ONBOOT=yes
BOOTPROTO=static
IPADDR=(서버아이피)
NETMASK=(서버넷마스크)
NETWORK=(서버네트워크아이피)
③새로운 네트워크 카드(eth1)
# /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
ONBOOT=yes
USERCTL=no
MASTER=bond0
SLAVE=yes
BOOTPROTO=none
[참고] USERCTL=no
일반 계정이 해당 인터페이스를 비활성화 가능 여부
④ /etc/modprobe.conf
alias bond0 bonding
alias eth0 3c59x <-- span="">
alias eth1 3c59x <-- span="">
options bonding max_bonds=2 <--- span="">
[참고] /etc/modprobe.conf 내용
alias bond0 bonding : bond0를 bonding으로 알기 쉽게 별명 정의
Options bonding mode=1 : bonding 1번 모드로 설정
Options bond0 miimon=100 : NIC 상태 체크 시간(1/100 sec)
[참고] bonding 모드 종류 및 특징
0 : balance-round robine : 두개의 NIC를 통한 분배 + Fault Tolerance
1 : active-standby : Active 상태의 NIC에 문제 발생시 standby NIC에서 Fault Tolerance
2 : balance-xor : 0 모드와 비슷하지만 xor 연산을 이용한 목적지 MAC과 근원지 MAC을 이용한 분배
+ Fault Tolerance
3 : broadcast : 두개의 NIC에 어떤 규칙없이 데이터 통신 + Fault Tolerance
4 : 802.3ad : link aggregation switch에 aggregation 그룹생성이 필요
⑤ modprobe 명령어로 bonding 적용
# modprove bonding
⑥ lsmod 명령어로 bonding 확인
# lsmod | grep bonding
⑦ service network restart 네트워크 재시작
# service network restart
⑧ /proc/net/bonding/bond0 파일에서 구성상태 확인 및 검증
- Bonding Driver Version
- Bonding Mode
- Slave Interface 등의 정보를 확인할 수 있다.

댓글 없음:

댓글 쓰기