카테고리 없음

[AWS] ENI 추가 후 네트워크 통신 불가 증상.

비내리는사막 2015. 12. 23. 14:08

# 아마존 공식 문서 (Amazon Linux 만 해당)

http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html


하지만, 테스트 하고자 했던 인스턴스의 OS는 CentOS 였기 때문에, ec2-net-util 패키지가 기본 제공 되지 않았습니다.


현재 구성원하시는 두개의 CentOS 서버의 secondary ENI 끼리의 연결은 asymmetric routing(비대칭 라우팅) 으로 인하여 문제가 생기는듯 싶습니다.

 

이 문제를 해결하기 위하여 몇가지 OS 내에서 설정이 필요로 하는데요, 언급해주신대로 아마존 AMI의 경우 ec2-net-utils이 자동으로 이 결함을 고쳐주는 방면, CentOS 및 다른 배포판의 경우 직접 설정을 잡아주셔야 합니다.

 

앞서 다른 설정 변경전에 몇가지 파일 또는 인스턴스를 백업하시길 권장해 드립니다.

cp /etc/sysconfig/network-scripts/ifcfg-eth* /root/ cp /etc/rc.local /root/

 

그뒤 아래의 명령어를 순차적으로 실행해주세요

 

$ cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth1

$ sed -i 's/eth0/eth1/g' /etc/sysconfig/network-scripts/ifcfg-eth1

$ /etc/init.d/network restart

 

위 명령어 실행 후 연결이 끊어진다면, eth1 의 내부 아이피로 재 접속합니다

 

먼저 두개의 네트워크 인터페이스의 내부 아이피를 저장합니다

$ IP1=eth0의 내부아이피

$ IP2=eth1의 내부아이피

 

$ GWIP=`curl http://169.254.169.254/latest/meta-data/local-ipv4 | awk -F\. '{print $1"."$2"."$3"."1}'` $ echo "default via $GWIP dev eth0 table 20" > /etc/sysconfig/network-scripts/route-eth0

$ echo "from $IP1 table 20" > /etc/sysconfig/network-scripts/rule-eth0

$ echo "default via $GWIP dev eth1 table 21" > /etc/sysconfig/network-scripts/route-eth1

$ echo "from $IP2 table 21" > /etc/sysconfig/network-scripts/rule-eth1

$ echo "default via $GWIP dev eth2 table 22" > /etc/sysconfig/network-scripts/route-eth2

$ echo "from 172.23.222.136 table 22" > /etc/sysconfig/network-scripts/rule-eth2

 

$ echo "route add -net default gw $GWIP netmask 0.0.0.0 dev eth0 metric 10001" >> /etc/rc.local $ echo "supersede dhcp-server-identifier 255.255.255.255;" >> /etc/dhcp/dhclient.conf $ reboot

 

위 명령어 실행뒤 시스템 재시작 후, 두개의 인터페이스가 동일히 작동 가능합니다.



http://thelongestblogurlicouldthinkof.blogspot.kr/2013/05/multiple-enis-on-amazon-aws-vpc-with.html