Sponsored Content
Full Discussion: sendto in packet socket
Top Forums Programming sendto in packet socket Post 82359 by andryk on Wednesday 31st of August 2005 07:15:39 AM
Old 08-31-2005
I've never been involved in such project but i guess you need to build the entire packet starting from link level header (eth) to arp and can use write() to send out packet, mac is used to route, no need of ip address required by sendto()
... and of course if u have multiple IF, you might want to bind to the correct IF owning the src mac of the pkt u are sending Smilie
Do let me know if my answer hinted u good Smilie
 

10 More Discussions You Might Find Interesting

1. Ubuntu

Permission denied with sendto in Ubuntu

I hope to post in the right place, otherwise I apologize for this I wrote a UDP sender and a UDP receiver, my goal is to transmit a file from th sender to the receiver. I'm using Ubuntu 8.04 Compiling goes well but when I execute the sender, its "sendto" gives me the error "Permission denied" .... (0 Replies)
Discussion started by: Puntino
0 Replies

2. IP Networking

sendto invalid argument

Hi I lost a lot of time in understanding the message "sendto Invalid argument" when I execute the following code. This code is a simple UDP sender improved with some reliability feature. My goal is to send a file. I've reported only the code which may be useful. Can anyone help me? Thank you... (0 Replies)
Discussion started by: Puntino
0 Replies

3. IP Networking

Error in sendto and recvfrom

Hi guys below is the code which I wrote to send some message to the server and the receive a a reply message from the server. Initially, I wrote one program to sendto and one program to receive from, it is working fine seperately. When I tried coding sendto and recvfrom in a sinlge program then... (0 Replies)
Discussion started by: arunc.kris
0 Replies

4. UNIX for Advanced & Expert Users

connect problem for sctp socket (ipv6 socket) - Runtime fail Invalid Arguments

Hi, I was porting ipv4 application to ipv6; i was done with TCP transports. Now i am facing problem with SCTp transport at runtime. To test SCTP transport I am using following server and client socket programs. Server program runs fine, but client program fails giving Invalid Arguments for... (0 Replies)
Discussion started by: chandrutiptur
0 Replies

5. Programming

socket function to read a webpage (socket.h)

Why does this socket function only read the first 1440 chars of the stream. Why not the whole stream ? I checked it with gdm and valgrind and everything seems correct... #include <stdio.h> #include <stdlib.h> #include <sys/types.h> #include <sys/stat.h> #include <string.h> #include... (3 Replies)
Discussion started by: cyler
3 Replies

6. Programming

Receiving broadcast packets using packet socket

Hello I try to send DHCP RENEW packets to the network and receive the responses. I broadcast the packet and I can see that it's successfully sent using Wireshark. But I have difficulties receiving the responses.I use packet sockets to catch the packets. I can see that there are responses to my... (0 Replies)
Discussion started by: xyzt
0 Replies

7. IP Networking

Clarification - Setting socket options at the same time when socket is listening

I need clarification on whether it is okay to set socket options on a listening socket simultaneously when it is being used in an accept() call? Following is the scenario:- -- Task 1 - is executing in a loop - polling a listen socket, lets call it 'fd', (whose file descriptor is global)... (2 Replies)
Discussion started by: jake24
2 Replies

8. IP Networking

NS3 SendTo

Hi, I am working to implement a basic WiFi infrastructure in NS3. I have placed 16 APs in grid and one client is moving using random walk. Client and AP can communicate through message exchange. However, when I try a message of size more than 30 bytes, it is crashed. Please help me if anyone have... (0 Replies)
Discussion started by: dandapat
0 Replies

9. Programming

Raw Socket Programming - Efficient Packet Sniffer

Hi, I have the requirement to sniff packets from the Ethernet card on my Linux machine and process it and feed it to a RANAP protocol stack. So far I have written the raw packet sniffer and successfully sniffing packets and do little processing. However, for huge number of packets ... (9 Replies)
Discussion started by: rstnsrr
9 Replies

10. AIX

Packet loss coming with big packet size ping

(5 Replies)
Discussion started by: Vishal_dba
5 Replies
DNET(8) 						    BSD System Manager's Manual 						   DNET(8)

NAME
dumbnet -- dumb networking library test program SYNOPSIS
dumbnet command args [...] DESCRIPTION
dumbnet is a simple test program for the dumbnet(3) library. It can be used to compose and transmit network datagrams as a Unix-style filter (e.g. reading from or writing to files and pipes) or modify the local system network configuration (including the ARP cache, firewall rule- set, network interfaces, and routing table). Payload generation commands addr address [...] Convert the address (specified as a hostname, IP address, or MAC address) into its binary representation on standard output. hex string [...] Convert the C-style escaped string (shellcode, for instance) into its binary representation on standard output. rand len Write len random bytes to standard output. Packet encapsulation commands eth [type type] [src mac] [dst mac] Prepend the data read from standard input with an Ethernet header on standard output. The Ethernet type may be specified as 'arp', 'ip', or as a hex, octal, or decimal number. arp [op op] [sha mac] [spa host] [tha mac] [tpa host] Prepend the data read from standard input with an ARP header on standard output. The ARP op may be specified as 'req', 'rep', 'revreq', 'revrep', or as a hex, octal, or decimal number. ip [tos num] [id num] [off offset] [ttl num] [proto protocol] [src host] [dst dst] Prepend the data read from standard input with an IP header on standard output. The fragmentation offset may be specified as a decimal number (optionally concatenated with '+' to indicate more fragments) or as a hex number. The protocol may be specified by name, or as a hex, octal, or decimal number. icmp [type num] [code num] Prepend the data read from standard input with an ICMP header on standard output. tcp [sport port] [dport port] [flags flags] [seq num] [ack num] [win num] [urp num] Prepend the data read from standard input with a TCP header on standard output. A port may be specified by name or hex, octal, or deci- mal number. The TCP flags may be specified as some combination of the characters in the set 'SAFRPU' or as a hex number. udp [sport port] [dport port] Prepend the data read from standard input with a UDP header on standard output. A port may be specified by name or hex, octal, or deci- mal number. Packet transmission commands send [device] Read a packet from standard input and send it over the network. If no device is specified, the packet is assumed to be an IP datagram and routed to its destination. Otherwise, the packet is assumed to be an Ethernet frame and is transmitted on the specified interface. Kernel interface commands arp show Display the kernel ARP cache. arp get host Display the kernel ARP entry for host. arp add host mac Add an ARP entry mapping the mac address for host. arp delete host Delete the ARP entry for host. fw show Display the kernel firewall ruleset. fw add|delete action direction device protocol src[:port[-max]] dst[:port[-max]] [type[/code]] Add a rule to or delete a rule from the active firewall ruleset. The action must be either 'allow' or 'block'. The direction must be either 'in' or 'out'. The device may specify an interface name, or 'any'. The protocol may be specified by name, or as a decimal num- ber. For TCP and UDP protocols, a port (or range, if specified with a max value) may be specified in decimal and appended to the source and/or destination address. For ICMP, a type (and optional code) may be specified in decimal. intf show Display the configuration of all network interfaces. intf get device Display the configuration for the interface specified by device. intf set device [alias host] [dst host] [inet host] [link mac] [up|down] [arp|noarp] Configure the interface specified by device. route show Display the kernel routing table. route get dst Display the route for the destination dst, specified as a hostname, IP address, or network prefix in CIDR notation. route add dst gw Add a route for the destination dst through the gateway gw. route delete dst Delete the route for the destination dst. EXAMPLES
Send a UDP datagram containing random shellcode: dumbnet hex "xebx1fx5ex89x76x08x31xc0x88x46x07x89" "x46x0cxb0x0bx89xf3x8dx4ex08x8dx56x0cxcdx80" "x31xdbx89xd8x40xcdx80xe8xdcxffxffxff/bin/sh" | dumbnet udp sport 555 dport 666 | dumbnet ip proto udp src 1.2.3.4 dst 5.6.7.8 | dumbnet send Save an ARP request in a file and send it twice: dumbnet arp op req sha 0:d:e:a:d:0 spa 10.0.0.3 tpa 10.0.0.4 | dumbnet eth type arp src 0:d:e:a:d:0 dst ff:ff:ff:ff:ff:ff > arp.pkt dumbnet send fxp0 < arp.pkt dumbnet send fxp0 < arp.pkt Send a fragmented ping packet: # Create ping packet with IP header, to set ICMP checksum echo "monkey monkey monkey monkey" | dumbnet icmp type 8 code 0 | dumbnet ip proto icmp src 1.2.3.4 dst 5.6.7.8 > ping.pkt # Chop off IP header dd if=ping.pkt of=ping.data bs=20 skip=1 # Fragment IP payload split -b 24 ping.data p. # Send fragments dumbnet ip id 1 off 0+ proto icmp src 1.2.3.4 dst 5.6.7.8 < p.aa | dumbnet send dumbnet ip id 1 off 24 proto icmp src 1.2.3.4 dst 5.6.7.8 < p.ab | dumbnet send COMPATIBILITY
The library was originally named dnet but was renamed to dumbnet due to a conflict with the DECnet library. This decision affects not only the filename of the shared library, but also the header file names and the library's SONAME tag, which means that software built on a non- Debian-derived distribution will not run with this library and recompiling the software will only work if some adjustments to header include directives and compiler/linker flags are made. SEE ALSO
dumbnet(3) AUTHORS
Dug Song <dugsong@monkey.org> BSD
October 17, 2001 BSD
All times are GMT -4. The time now is 02:14 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy