ip: 숫자로 구성된 주소 범위가 제한되어 있다 0 ~ 256까지 256개이다 서브넷마스크: 네트워크 크기 8bit 게이트 웨이 네트워크 : 연결 DNS PC와 PC(같은 것 끼리) 연결 할때 크로스케이블 사용(실기1번) AI Address : 0.0.0.0~255.255.255.255 (총42억개) (초등)0 : 0000 0000 (중고등)0.0 : 0000 0000 0000 0000 (대학)0.0.0 : 0000 0000 0000 0000 0000 0000 ip갯수는 256까지 있는데 처음과 끝 ip를 사용하지 못하므로 254개가 있다 ping : 네트워크 상태를 확인하기 위한 명령어 ICM : internet control message protocol 패킷을 보내게되고 이에대한 응답이 오는지 확인함 이때 응답에 대한 지연 시간이나 패킷 손실 등의 정보가 출력 ping 명령어는 네트워크 문제에 해결에 유용하게 사용 모두에게 필수적인 명령어다 ICMP 0x08 Echo Request(요청) 0x00 응답 클라이언트.py # 필요한 모듈을 임포트합니다. import socket # 서버의 IP 주소와 포트 번호를 지정합니다. server_address = ('192.168.0.210', 8888) # 클라이언트 소켓을 생성합니다. client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 서버에 연결합니다. client_socket.connect(server_address) # 메시지를 보냅니다. message = 'Hello, server!' client_socket.sendall(message.encode()) # 서버로부터 메시지를 받습니다. data = client_socket.recv(1024) print(f'Server replied: {data.decode()}') # 클라이언트 소켓을 닫습니다. client_socket.close() 서버 접속 서버: listen, bind, eccept, 클라이언트: IP, port connect가 필요하다. 서버 # 필요한 모듈을 임포트합니다. import socket # 서버의 IP 주소와 포트 번호를 지정합니다 . server_address = ('localhost', 8888) # 서버 소켓을 생성합니다. server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 서버 소켓을 지정한 IP 주소와 포트 번호에 바인드합니다. server_socket.bind(server_address) # 클라이언트로부터의 연결 요청을 기다립니다. server_socket.listen(1) while True: print('Waiting for a connection...') # 클라이언트의 연결 요청이 있을 때까지 대기합니다. connection, client_address = server_socket.accept() try: print(f'Connection from {client_address}') # 클라이언트로부터 데이터를 수신합니다. data = connection.recv(1024) print(f'Received {data.decode()}') # 수신한 데이터를 클라이언트에게 다시 보냅니다. connection.sendall(data) finally: # 클라이언트와의 연결을 닫습니다. connection.close() vmware ping : 네트워크 상태를 확인하기 위한 명령어 ICM : internet control message protocol 패킷을 보내게되고 이에대한 응답이 오는지 확인함 이때 응답에 대한 지연 시간이나 패킷 손실 등의 정보가 출력 ping 명령어는 네트워크 문제에 해결에 유용하게 사용 모두에게 필수적인 명령어다 ICMP 0x08 Echo Request(요청) 0x00 응답 클라이언트.py # 필요한 모듈을 임포트합니다. import socket # 서버의 IP 주소와 포트 번호를 지정합니다. server_address = ('192.168.0.210', 8888) # 클라이언트 소켓을 생성합니다. client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 서버에 연결합니다. client_socket.connect(server_address) # 메시지를 보냅니다. message = 'Hello, server!' client_socket.sendall(message.encode()) # 서버로부터 메시지를 받습니다. data = client_socket.recv(1024) print(f'Server replied: {data.decode()}') # 클라이언트 소켓을 닫습니다. client_socket.close() 서버 접속 서버: listen, bind, eccept, 클라이언트: IP, port connect가 필요하다. 서버 # 필요한 모듈을 임포트합니다. import socket # 서버의 IP 주소와 포트 번호를 지정합니다. server_address = ('localhost', 8888) # 서버 소켓을 생성합니다. server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 서버 소켓을 지정한 IP 주소와 포트 번호에 바인드합니다. server_socket.bind(server_address) # 클라이언트로부터의 연결 요청을 기다립니다. server_socket.listen(1) while True: print('Waiting for a connection...') # 클라이언트의 연결 요청이 있을 때까지 대기합니다. connection, client_address = server_socket.accept() try: print(f'Connection from {client_address}') # 클라이언트로부터 데이터를 수신합니다. data = connection.recv(1024) print(f'Received {data.decode()}') # 수신한 데이터를 클라이언트에게 다시 보냅니다. connection.sendall(data) finally: # 클라이언트와의 연결을 닫습니다. connection.close() [서버와 클라이언트] 서버: 서버는 IP, port 그리고 listen, bind, accept가 중요하다~ 클라이언트: IP, port 그리고 connect 중요하다~ 서브넷마스크 255.255.255.0 0: 0000 0000 255.255.255.128 128: 1000 0000 20230320 서브넷 마스크 서브넷킹 : 원본 네트워크를 여러 개의 네트워크로 분리 하는 것(ip를 효율적으로 사용을 위함) 서브넷 이진수 전체 호스트 제외 가용호스트 0 0000 0000 256 -2 254 128 1000 0000 128 -2 126 192 1100 0000 64 -2 62 224 1110 0000 32 -2 30 240 1111 0000 16 -2 14 248 1111 1000 8 -2 6 252 1111 1100 4 -2 2 254 1111 1110 2 -2 0 255 1111 1111 1 -2 0 네트워크 ID = 1 호스트ID = 0 192.168.2.0/24-> 255.255.255.0 255: 1111 1111 192.168.2.0/25 255.255.255.128(0-127)(1-126) 255.255.255.128(128-255)(129-254) 앞이나 뒤 둘중 하나를 게이트 웨이로 사용가능 evat : 4개 라우터 : 2개 20230322 6일차 공부방 #게이트 웨이: 출구 = 라우터 서브넷마스크, 라우터 : 시험문제 출제 1.1.1.0/30 0-3 4-7 8-11 12-15 사용 가능 개수:4개 실제 사용 개수:2개 라우터 ip: 1.1.1.1 서브넷: 255.255.255.252 ping -> icmp ping 168.126.63.1 : 한국통신 1번 ping x 2번 ping 가능 telnet : 원거리에 접속가능하게 해주는 것 라우터 텔렛 설정 config t line vty 0 4 - 0에서 부터 4까지 총 5명 사용가능 password 123456 enable 123456 login exit 20230329 8일차 수업 DNS란? 이름 해석기 도메인을 IP 로 해석함. 아주 중요함.. Menu 1 Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Menu 2 Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam. Menu 3 Eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. web = www.smartfarm.kr > 192.168.1.1 Home Gateway에 iot연결 2023 04 03 수업 9일차 IOT를 사용하려면 프로그래밍이 필요하다. 문제가 주어졌을때 ip, 서브넷마스크, dns, 게이트웨이 가 연결되어야한다