1.
UDP Chat (Client ends chat) - Server
import socket
s = [Link](socket.AF_INET, socket.SOCK_DGRAM)
[Link](('localhost', 9999))
print("Server ready...")
while True:
data, addr = [Link](1024)
msg = [Link]()
print("Client:", msg)
if [Link]() == 'bye':
break
reply = input("Server: ")
[Link]([Link](), addr)
[Link]()
2. TCP Chat (Server ends chat) - Server
import socket
s = [Link]()
[Link](('localhost', 9999))
[Link](1)
print("Server ready...")
conn, addr = [Link]()
while True:
msg = input("Server: ")
[Link]([Link]())
if [Link]() == 'bye':
break
data = [Link](1024).decode()
print("Client:", data)
[Link]()
[Link]()
3. UDP Case Conversion
import socket
s = [Link](socket.AF_INET, socket.SOCK_DGRAM)
[Link](('localhost', 8888))
print("Server ready...")
while True:
data, addr = [Link](1024)
[Link]([Link]().lower().encode(), addr)
4. ICMP Packet Sniffer
import socket
s = [Link](socket.AF_INET, socket.SOCK_RAW, socket.IPPROTO_ICMP)
print("Sniffer running...")
while True:
pkt, addr = [Link](65535)
print("ICMP packet from", addr)
5. TCP File Transfer - Server
import socket
s = [Link]()
[Link](('localhost', 9000))
[Link](1)
conn, addr = [Link]()
filename = [Link](1024).decode()
with open(filename, 'rb') as f:
data = [Link]()
[Link](data)
[Link]()
[Link]()