How can I set DONT_FRAGMENT flag in IP header using python sockets?
The following code
socket.setsockopt(socket.IPPROTO_IP, socket.IP_DONTFRAG, 1)
gives me this error:
AttributeError: 'module' object has no attribute 'IP_DONTFRAG'
Anyone has an idea?
def create_sender_session(self):
logging.debug("Create Sender Session")
if (self.send_ip_ver == 6 or self.resp_ip_ver == 6):
self.sender_socket = socket.socket(
socket.AF_INET6, socket.SOCK_DGRAM)
self.sender_socket.setsockopt(
socket.IPPROTO_IPV6, socket.IPV6_TCLASS, self.tos)
self.sender_socket.setsockopt(
socket.IPPROTO_IPV6, socket.IPV6_UNICAST_HOPS, self.ttl)
else:
self.sender_socket = socket.socket(
socket.AF_INET, socket.SOCK_DGRAM)
self.sender_socket.setsockopt(
socket.SOL_IP, socket.IP_TTL, self.ttl)
self.sender_socket.setsockopt(
socket.IPPROTO_IP, socket.IP_TOS, self.tos)
self.sender_socket.setsockopt(
socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
self.sender_socket.bind((self.send_addr, self.send_port))
logging.info('Sender started: {}:{}'.format(
self.send_addr, self.send_port))
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.