Team B: Lambda 도구 구현
분석 대상
Lambda 함수
코드 크기
핵심 기능
dns-resolve Lambda
핵심 로직: Route53 Private Hosted Zone 조회
def resolve_dns_from_route53(hostname, region="us-east-1"):
"""
DNS 해석 흐름:
1. Route53 Private Hosted Zone 목록 조회
2. 호스트명과 일치하는 Zone 찾기
3. DNS 레코드 조회 (A, CNAME)
4. CNAME이면 재귀적으로 체인 추적
5. 최종 IP 주소 반환
"""
route53 = boto3.client('route53')
hosted_zones = route53.list_hosted_zones_by_name()
for zone in hosted_zones['HostedZones']:
if zone['Config']['PrivateZone']:
records = route53.list_resource_record_sets(
HostedZoneId=zone['Id'],
StartRecordName=hostname,
StartRecordType='A'
)
# CNAME 체인 추적
# A 레코드의 IP 주소 반환IP → AWS 리소스 매핑
connectivity Lambda
VPC Reachability Analyzer
보안 그룹 수정 (최소 권한)
cloudwatch-monitoring Lambda
7가지 operation 라우팅
VPC Flow Logs 쿼리 (호스트명 → ENI 변환)
공통 패턴: lambda_handler → extract_tool_name → 핸들러
토론 질문
마지막 업데이트