묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결풀스택을 위한 도커와 최신 서버 기술(리눅스, nginx, AWS, HTTPS, flask 배포) [풀스택 Part3]
강사님 강의를 베이스로 blue green을 적용해보려하는데요.
version: "3" services: web-server: image: nginx container_name: nginx restart: always ports: - "80:80" - "443:443" volumes: - ./nginx/:/etc/nginx/default.conf.d/ blue: image: test-express container_name: testserver_blue restart: always expose: - "8080" volumes: - ./:/home/ec2-user - /etc/localtime:/etc/localtime green: image: test-express container_name: testserver_blue restart: always expose: - "8080" volumes: - ./:/home/ec2-user - /etc/localtime:/etc/localtime요게 제가 작성한 docker-compose.yml 파일입니다 . 근데 이부분을 실행하다보면 .. repository does not exist or may require 'docker login': denied: requested access to the resource is denied요 에러가 발생해서 도커로그인은 정상적으로 ec2에서 되어있는데.. 왜 그런건지를 이해를 못하겠어요. 그리고 Error: No such container: nginx 요게 자꾸떠서 이미지를 nginx를 docker pull nginx로 받아두었는데 왜 이런 이슈가 생기는지를 모르겠습니다 .. 답변부탁드릴게요 ㅠㅠ
-
해결됨외워서 끝내는 네트워크 핵심이론 - 응용
[질문] IPSec VPN과 터널링 개념 - 네트워크 속도
안녕하세요, 강사님. 쉽게 설명해주셔서 강의 잘 듣고 있습니다. IPSec을 사용하여 VPN 터널링을 구현하면 IP 헤더와 IP 페이로드가 암호화되어 데이터를 안전하게 전송할 수 있다고 배웠습니다. 하지만, [1] IPSec을 사용하면 추가 헤더 정보가 필요하므로 패킷 크기가 늘어나서 네트워크 오버헤드를 증가시켜 속도를 느리게 만들 수 있을것 같습니다. [2] 또한, 새로운 패킷을 추가/삭제/수정 하는 과정 또한 네트워크 속도에 영향을 끼칠것 같은데요. Q1. 위의 내용이 제가 잘 이해한게 맞을까요?Q2. 그럼에도 불구하고 IPSeC VPN이 널리 사용되는 이유가 있을까요? 미리 답변 감사드립니다 :)
-
해결됨외워서 끝내는 네트워크 핵심이론 - 응용
중간자 공격에 대해 질문드립니다
안녕하세요 선생님~^^강의를 마치고서도 꾸준히 네트워크 공부를 하고 있는데요,아는 분께 질문받은 내용인데 도저히 답이 안나와서요~~;;arp spoofing하고 icmp redirect 공격을 어떻게 막을 수 있는 지에 대한 질문이었는데이를 호스트가 자체적으로 막을 수 있는 방법이 있나요?제 생각엔 없을 듯한데... 테이블을 보고 의심 정도는 해볼 만하겠다 생각합니다만만약 100% 구분해낼수 있는 방법이 있다면 뭐가 있을까요?아무래도 다른 보안 장비가 필요할런지요?선생님의 지혜를 빌리고 싶습니다. ^^ 여담으로... 최근 유튜브에 올리신 글을 보았는데저또한 비교적 비싼 값에 강의를 구매했지만딱히 박탈감을 느끼거나 하진 않습니다. ^^아깝다는 생각이 들지 않아서 그렇겠지요양질의 강의에 감사드리며~ 강의 흥행 축하드립니다
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
싱글스레드가 안전한 이유?
싱글 스레드가 멀티스레드 이슈로부터 안전한게 다른 스레드의 개입이 없어서라고 알고있습니다.멀티코어 다중 스레드 PC에서 싱글스레드 프로그램을 동작시킨다 가정합니다.싱글스레드 환경에서 메인스레드 한개만 동작할것이고 스레드 아이디가 123이라 치고싱글 스레드 환경에서 변수 a가 있다치고 무한루프로 증가 시킨다고 칠때 컨텍스트 스위칭이 일어나도 a라는 변수는 무조건 스레드 아이디 123이고 같은 코어에 있는 스레드가 동작시키는 건가요??컨텍스트 스위칭 과정에서 운영체제가 스레드를 맘대로 할당해 주는 것으로 알고 있는데 다른 코어에 잇는 스레드를 할당해 줄수도 있지 않나해서요.그럼 다른 코어에 있는 캐시 등에 접근 가능하여 가시성, 코드 재배치 문제가 잇지 않을까합니다
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
바이트 오더 정렬 안 해도 상관없나요?
패킷 코드를 봐도 딱히 호스트,네트워크 간의 바이트 정렬은 하지 않던데내부에서 간단히 테스트할 꺼라 처리를 하지 않으신 건가요? 아니면 다른 방법으로 하셨는데 제가 못 찾는 걸까요
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
null체크후 clientSession.Room을 참조하면 Push 할때 null이 넘어갈수 있는거 아닌가요?
안녕하세요. 강의 열심히 보고 있습니다. ^^JobQueue #1 강의중 19분51초에서..멀티스레드 환경에서14줄에서 null 체크를 하고접속이 해제된다면17줄에 room을 넣을 때null이 반환되지 않을까요?? 검색해봐도 해당 내용은 없는거 같아서 질문 드립니다.
-
해결됨외워서 끝내는 네트워크 핵심이론 - 기초
Packet으로 만든다는 표현에 관하여
선생님 안녕하세요.나날이 선생님 수업을 듣고 지식이 풍부해지고 있습니다.우선 질문을 들이기 전에 현재 네트워크 공부 상태는 L3 파트를 다 들었고 다시 한번"이해하면 인생이 바뀌는 TCP/IP 송수신 구조" 강의를 들으면서 질문이 2개 생겼습니다.우선 L3 파트까지 진행하는 동안 "Packet으로 만든다"는 표현을 많이 들었고 이 부분에 관해 의문점이 생겼습니다.데이터는 최종적으로 L1~L2를 거쳐서 Internet 망으로 나가게 되는데 그럼 최종적으로 데이터가 포장되는 형태는 Frame입니다.그럼 L3 부분에서 설명이 이뤄지면 "Packet으로 만든다"라는 표현을 사용하는게 맞다고 생각합니다. 그리고 데이터가 Internet 망으로 나가게 되면 L2 -> L1을 거치면서 나가고 L2 ~ L1에서는 Packet을 Encapsulation 한 Frame의 형태로 유통이 됩니다.질문1근데 강의에서 Internet 구간에서 정보가 유통될 때는 "Packet의 형태로 유통된다"고 말씀하시는데 Internet망을 논하는 단계면 최종적으로는 데이터가 Frame 형태로 Internet망에 유통이 되었다는건데 왜 L3단계에서 이야기해야하는 "Packet의 형태로 유통된다"고 말씀하셨는지 이해가 가지않습니다.질문2강의에서 Packet을 만드는 걸 택배 포장에 비유하셨고 택배를 실은 트럭을 Frame에 비유하셨습니다. 그리고 "Packet 이라는건 그나마 유지가 되는데 Frame은 유통 과정에서 트럭을 계속 갈아탄다"라는 표현을 사용하셨고 최종적으로는 "Frame은 수시로 트럭이 바뀐다"라는걸 강조하셨습니다. Frame안에 Packet이 들어가있는데 Frame이 수시로 바뀐다는 말은 Decapsulation 되어 Frame이 벗겨졌다가 다시 Encapsulation되어 Frame이 씌어지는 과정이 Internet망에서 일어나는건가요?
-
해결됨자동차 SW - UDS 진단통신 정복하기
UDS 진단 시 CAN ID는 양방향 모두 같은 ID를 사용하나요?
진단기에서 제어기로 보낼 때 CAN ID가 존재한다고 봤는데제어기에서 응답할 때에 동일한 CAN ID로 응답하는지 궁금합니다. 그리고 자동차에 여러 ECU가 존재하는 것으로 아는데 BMS도 진단기로 진단 가능한 ECU 중 하나 일까요?
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
실전문제풀이 해설 pdf 요청 드립니다
저도 자격증 취득을 준비하고 있고저희 팀원들도 이 강의를 수강하며 열심히 준비하고 있습니다.pdf 자료 공유 부탁 드립니다.dico7@naver.com
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
실전문제풀이 9 19번
여서 왜 A 는 안되나요?단순 조정 정책도 특정 지표를 바탕으로 Auto Scaling 그룹을 동적으로 확장할 수 있는거 아닌가요?
-
해결됨[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
PacketSession 강의에서 LOCK 크래시 관련
좋은 강의 감사합니다! 해당 강의에서, 다수의 클라이언트 세션이 접속된 상태에서 클라이언트 연결을 끊었을 때, 크래시가 나는 부분을 강의를 멈춰놓고 파악을 해 보았는데요, 이 경우 디스커넥트 이벤트가 발생하면서 OnDisconnected()가 호출되고, GameSessionManager()의 Remove() 함수가 다른 스레드에서 호출될 수 있다는 사실까지는 파악해서, _sessions.erase(session);이 코드가 문제가 된 것 까지는 파악했습니다.그런데 sessions.erase(session); 코드와, 아래의 session에서 루프를 돌만서 Send를 시키는 부분은 같은 WRITE_LOCK으로 보호가 되고 있는 상태라, 우선 루프를 끝까지 돌아 각 세션에 대한 send가 끝난 후 스코프를 빠져나가 WRITE_LOCK이 풀린 후 _session.erase()가 일어날 것이라고 생각해서 이 부분은 문제가 아닐 거라 생각했고, 결국 문제를 찾지 못하고 강의를 들었는데요, 강의에서는 이 부분에 대해서 따로 설명이 없는 것 같아, 왜 저 부분의 WRITE_LOCK 이 문제가 되었고, 루프를 도는 도중에 erase가 일어난 것인지 궁금합니다.
-
해결됨외워서 끝내는 네트워크 핵심이론 - 기초
라우터와 스위치의 차이.
안녕하세요라우터와 스위치 차이가스위치 = mac 기반, 목적지에 스위칭하도록 하는 것라우터= ip 기반, 목적지에 대한 경로 설정 값을 가진 것( -> 경로설정값은 라우팅 테이블에 포함)이렇게 생각하면 되는걸까요??감사합니다
-
해결됨외워서 끝내는 네트워크 핵심이론 - 기초
L2 Access 로 나간다고 말씀하셨는데..
L2 Access 로 나가서 라우트를 탄다고 말씀하셨는데 장비 그림(NIC)을 보면 전에 OSI 레이어에서 L1 이였던 걸로 기억합니다. L1 에서 다른 호스트를 찾아서 나가는 도중에 다시 L2 를 타는 건가요? 이부분이 많이 헷갈리네요..
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
AcceptEx()에 recvBuffer 지정시
AcceptEx 문서를 보니, AcceptEx에 버퍼를 지정 시, 해당 버퍼에 기본적으로(sizeof (sockaddr_in) + 16) * 2 만큼의 데이터가 담겨 오는것으로 보입니다. 문서에는 "서버의 로컬 주소 및 클라이언트의 원격 주소" 라고 되어있네요. ProcessAccept에서 따로 해당 크기만큼 버퍼의 OnWrite()를 해주지 않고 있는데,해당 데이터는 현재 Listener에서 따로 처리하지 않으니, 버퍼에는 기록이 되었을지언정사용하는 데이터가 아니니 WritePos를 갱신시켜주지 않는 것으로 이해가 되었습니다. 그런데 만약 FreeSize()가 (sizeof(sockaddr_in) + 16) * 2 보다 작게 남아 있었다면버퍼가 초과되어 정의되지 않은 동작이 일어나거나, 혹은 AcceptEx()가 실패하거나 하는 이상이 있을 것으로 보이는데,본문과 같이 별다른 처리를 하지 않아도 문제가 없는 것인지 궁금합니다.
-
미해결풀스택을 위한 도커와 최신 서버 기술(리눅스, nginx, AWS, HTTPS, flask 배포) [풀스택 Part3]
실행 오류 [답변 부탁드리겠습니다.]
안녕하세요.본 강의에서 해주신 코드 double check, 인바운드 규칙 확인 및 모든 방법을 다 써봤는데도 마지막 public ip접속시 'succes'라는 문구가 뜨지 않는데요.컨테이너를 전부 삭제해보고 인스턴스도 재부팅해봤는데도 원하는 결과가 출력되지 않습니다.어떤점에서 error가 났다는 log기록도 없는데 혹시 제가 놓친 부분이 무엇인지 알 수 있을지 조언해주시면 감사드리겠습니다.혹시 몰라서 전체 log 화면 첨부드립니다.감사합니다.
-
해결됨20년 경력자의 알기쉬운 컴퓨터네트워크
무선 라우터에서 buffer frame
다음과 같은 토폴로지에서 ED0에서 Server0으로 ping 테스트를 진행했을때, 패킷이 server0에 도착하였을때쯤 갑자기 Wireless Router0에서 End Device 전체로 메시지가 전송됨을 확인했습니다.패킷 상세를 확인해보니, buffer 가 되어있던 메시지를 보낸거라고 하는데.( “The device takes out this frame from the buffer and sends it.”) 왜 buffer에 메시지가 저장된건가요? 패킷 낭비같은데..이걸 막을 수 있는 방법은 없나요?
-
해결됨20년 경력자의 알기쉬운 컴퓨터네트워크
네트워크 확장시 OSPF area 설정
네트워크 확장시 OSPF area에 변화가 필요한지 궁금합니다Background:1. 기존 하단의 LAN 네트워크에서 R1, SW1, SW2 를 OSPF area 0 으로 설정하였습니다2. LAN 네트워크 구성 후, WAN 부분(R2, RADIUS 서버)과 무선 라우터를 추가하였습니다 질문:1. 무선 라우터를 area 0에 넣어야할까요 아니면 area 분리해 area 1으로 넣어줘야할까요?2. R2(WAN 외부 라우터)를 area0에 넣어야할까요 아니면 area 분리해 area 2로 넣어줘야할까요?3. 만약 R2가 area0에 속한다면 WAN 사이즈 < area0사이즈 아닌가요? Backbone area가 너무 커지는거 아닌가요...?4. 어디까지가 WAN이고 LAN인지 네트워크가 어떻게 인식하나요?
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
JobTimer 강의 관련 질문을 드립니다.
안녕하세요. 선생님.항상 좋은 강의를 위해 고생많으십니다.다름이 아니라 JobTimer강의를 보던 도중 Atomic과 lock을 함께 사용하여서 TimerItem을 꺼내는 코드를 작성해주셨는데요.아래와 같이 2가지 사항이 궁금합니다.1. lock과 Atomic을 함께 쓰시는 경우는 특정 컨테이너에서 작업을 다 꺼내고 추가적인 작업을 할 경우, lock 점유 시간을 줄이고 싶으실 때에 Atomic을 함께 사용하시는 것이라 보면 될까요?2. 이것이 맞다면, 보통 Atomic을 함께 써야하는 'lock 점유 시간이 긴' 작업은 어떤 기준으로 판단하시는 지가 궁금합니다.시간내주시고 확인해주셔서 감사합니다.
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
실전 문제풀이 6강 18번
읽기 전용 복제본을 생성을 하면 여러 리전에서 읽기만 가능한거 아닌가요?그렇기에 온라인에서 사용하기에는 제약이 있는 것이 아닌가요?
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
공간이 부족해서 기존 청크를 날리는 건 괜찮을 걸까요?
Queue<byte[]> _sendQueue = new Queue<byte[]>();_sendQueue.Enqueue(sendBuff);이렇게 sendBuff를 넣어놔서 누군가 참조하고 있을 수 있기 때문에 밀어서 사용하지 않은 건데 if (CurrentBuffer.Value.FreeSize < reserveSize)CurrentBuffer.Value = new SendBuffer(ChunkSize); 이렇게 기존 청크 날리고 새로운 아이로 교체를 하면 밀어서 사용하지 않는 의미가 퇴색되는 거 아닌가요? 꽉 차서 기존 청크를 날릴 때 즈음에는 참조하고 있는 애가 없어질 확률이 높기 때문에 꽉 차서 날리는 건 괜찮은 걸까요?