살구월드

잠깐, 리눅스, C 언어, Java, Python 등
각종 예제 검색하기

 

목차

  1. 안드로이드 TCP 소켓 서버 만들기 예제 이전 포스팅 링크 및 설명
  2. C언어 간단한 소켓 프로그래밍 예제 이전 포스팅 링크 및 설명
  3. 파이썬 os.write 함수로 기존 파일 마지막에 문자열 추가 예제 이전 포스팅 링크 및 설명
  4. 파이썬 TCP 소켓 생성 및 bind 예제
  5. 파이썬 TCP 소켓 listen 및 accept 처리 예제

 

 

 

 

 

 

 

 

 

안드로이드 TCP 소켓 서버 만들기 예제 이전 포스팅 링크 및 설명

이전에 안드로이드에서 소켓 서버를 만드는 방법에 대해 알아본 적이 있습니다. 안드로이드 애플리케이션에서 네트워크 통신을 위해 소켓 서버를 구축하는 것은 안드로이드 네트워크 통신 앱 개발에 필수 학습 내용입니다. 이전에 작성한 글에서는 TCP 서버 소켓을 만드는 방법에 대해 상세하게 설명하였습니다. 이전 포스트를 통해 해당 내용을 자세히 살펴보실 수 있습니다. 만약 안드로이드 앱으로 TCP 클라이언트, TCP 서버를 구성하고 있으시다면 아래의 포스팅을 참고하여 학습해주세요.

 

2023.07.25 - [Android] - [안드로이드] 서버 및 클라이언트 소켓 통신 - 2

 

[안드로이드] 서버 및 클라이언트 소켓 통신 - 2

이전 포스팅 주제 이전 포스팅에서는 안드로이드에서 서버 소켓을 생성하여 bind, listen 하는 방법에 대해 알아보았습니다. 오늘은 클라이언트 소켓을 생성하고 서버 소켓에 연결한 후 메세지를

salguworld.tistory.com

 

 

 

 

 

 

 

C언어 간단한 소켓 프로그래밍 예제 이전 포스팅 링크 및 설명

다음으로 C언어로 간단한 소켓 프로그래밍을 하는 방법에 대해 이전에 알아본 적이 있습니다. C언어 프로그래밍에서 네트워크 통신을 위해서는 TCP 소켓을 생성하여 특정 TCP 포트를 bind하고 listen, aceept 처리해야합니다. 이전에 작성한 글에서는 이를 어떻게 만드는지에 대해 상세하게 다루었습니다. 만약 소켓 프로그래밍 프로그램을 C로 개발중이시라면 아래의 포스팅을 참고하여 TCP 서버 소켓 프로그램을 만들어보세요. 아래는 해당 포스팅 링크입니다.

 

2023.07.13 - [C/응용] - [C언어] 간단한 소켓 프로그래밍 - 1

 

[C언어] 간단한 소켓 프로그래밍 - 1

C언어의 BSD 소켓이란? BSD 소켓은 Berkeley Software Distribution에서 개발된 네트워크 프로그래밍 인터페이스입니다. BSD 소켓은 TCP/IP 프로토콜을 기반으로 하며, 소켓이라는 추상적인 개념을 통해 네트

salguworld.tistory.com

 

 

 

 

 

 

 

파이썬 os.write 함수로 기존 파일 마지막에 문자열 추가 예제 이전 포스팅 링크 및 설명

마지막으로 이전에 알아본 파이썬의 os.write 함수를 이용하여 기존 파일의 마지막에 문자열을 추가하는 방법에 대해 알아보세요. 이전에 작성한 글에서는 파일 처리와 관련하여 이 함수를 어떻게 활용하는지에 대해 상세하게 설명하였습니다. 특히 이미 open 등으로 텍스트 파일 등을 만들어 로컬에 저장해뒀다면 추후 이 파일 맨 마지막에 문자열 추가가 필요할 때가 있습니다. 이런 경우를 os.write 함수로 파이썬에서 처리할 수 있습니다. 해당 내용이 궁금하시다면 아래 링크를 참고해주세요.

 

2023.08.06 - [Python/os] - [Python] os.write 파일에 내용 쓰기 예제(기존 파일 마지막 추가하기)

 

[Python] os.write 파일에 내용 쓰기 예제(기존 파일 마지막 추가하기)

목차 os.write 함수란? os.write 함수 인자 및 반환 값 설명 새로운 파일에 문자열 쓰기 예제 기존 파일 마지막에 문자열 추가하기 예제 다른 파일의 내용을 읽어 새로운 파일에 쓰기 예제 1. os.write 함

salguworld.tistory.com

 

 

 

 

 

 

 

파이썬 TCP 소켓 생성 및 bind 예제

오늘은 파이썬에서 TCP 소켓을 생성하고 bind하는 방법에 대해 알아보겠습니다. socket 라이브러리의 socket 함수를 사용하여 소켓을 생성할 수 있습니다. 그리고 bind 함수를 이용하여 소켓을 특정 주소와 포트에 연결할 수 있습니다. 예를 들어, s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)을 통해 소켓을 생성하고, s.bind((HOST, PORT))을 통해 소켓을 주소와 포트에 바인드할 수 있습니다. 직접 아래 코드를 실행하여 파이썬으로 TCP 소켓을 생성하여 bind 해보세요.

 

# 필요한 모듈 import
import socket

# 소켓 객체 생성
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

# 주소 및 포트 설정
server_address = ('localhost', 12345)

# 소켓에 주소 및 포트 bind
sock.bind(server_address)

print("소켓이 {} 포트에 바인드 되었습니다.".format(server_address))

 

파이썬에서 TCP 서버 소켓을 만들고 bind한 모습

 

 

 

 

 

 

 

파이썬 TCP 소켓 listen 및 accept 처리 예제

다음으로 파이썬에서 TCP 소켓이 클라이언트의 연결 요청을 수신하기 위해 listen 및 accept하는 방법에 대해 알아보겠습니다. 생성된 소켓은 listen 함수를 통해 클라이언트의 연결 요청을 대기하게 됩니다. 그리고 연결 요청이 들어오면 accept 함수를 통해 이를 수락하게 됩니다. 예를 들어, s.listen()을 통해 소켓이 연결 요청을 대기하게 하고, client, addr = s.accept()을 통해 연결 요청을 수락할 수 있습니다. 이렇게 하면 client는 연결된 클라이언트 소켓이 되고, addr은 클라이언트의 주소가 됩니다. 아래 예제 코드를 직접 실행해보세요.

 

# 필요한 모듈 import
import socket

# 소켓 객체 생성
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

# 주소 및 포트 설정
server_address = ('localhost', 12345)

# 소켓에 주소 및 포트 bind
sock.bind(server_address)

# 소켓 listen 시작
sock.listen(1)

while True:
    # 연결 수락
    print("연결을 기다리는 중입니다.")
    connection, client_address = sock.accept()

    try:
        print("{} 주소에서 연결이 들어왔습니다.".format(client_address))
        
    finally:
        # 연결 정리
        connection.close()

 

파이썬에서 listen과 accept를 이용하여 클라이언트 요청을 기다리는 모습

잠깐, 리눅스, C 언어, Java, Python 등
각종 예제 검색하기

공유하기

facebook twitter kakaoTalk kakaostory naver band