The UNIX and Linux Forums  
Bonjour et bienvenu par les États-Unis à la UNIX et Linux Forums! Merci de votre visite et vous joindre à notre communauté mondiale.

Go Back   Les systèmes UNIX et Linux Forums > Top Forums > UNIX for Advanced & Expert Users
.
google unix.com



UNIX for Advanced & Expert Users Expert à Expert. Apprenez avancé UNIX, des commandes UNIX, Linux, les systèmes d'exploitation, d'administration système, de la Programmation, Shell, Shell Scripts, Solaris, Linux, HP-UX, AIX, OS X, BSD.

Plus d'UNIX et Linux Forum Sujets Vous trouverez peut-être utile
Fil Thread Starter Forum Réponses Last Post
réseau et l'adresse de diffusion scofiled83 De programmation et de script Shell 4 11-09-2008 08:55 AM
broadcast SEB UNIX Desktop for Dummies Questions & Réponses 1 07-08-2003 10:40 AM
Broadcast IP Address PBNOSGT IP Networking 4 03-11-2002 09:43 PM
diffusion par courriel? solvman UNIX pour les nuls Questions et réponses 1 10-08-2001 11:20 AM
adresse de broadcast 98_1LE IP Networking 1 02-06-2001 02:54 PM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Recherche sur ce Thread Rate Thread Modes d'affichage
  #1 (permalink)  
Old 12-10-2008
konvalo konvalo is offline
Registered User
  
 

Join Date: Jan 2002
Messages: 20
Question Pourquoi diffusion UDP ne fonctionnent pas?

J'utilise FreeBSD7.0, je tiens à profiter de diffusion UDP, mon code est ci-après:
/ * udpcli01.c * /
int
main (int argc, char ** argv)
(
int sockfd;
struct sockaddr_in servaddr;
if (argc! \u003d 2)
err_quit ( "usage: udpcli <ipaddress>");
bzero (& servaddr, sizeof (servaddr));
servaddr.sin_family \u003d AF_INET;
servaddr.sin_port \u003d htons (13);
inet_pton (AF_INET, argv [1], & servaddr.sin_addr);
sockfd \u003d socket (AF_INET, SOCK_DGRAM, 0);
dg_cli (stdin, sockfd, (SA *) & servaddr, sizeof (servaddr));
exit (0);
)

/ * dg_cli.c * /
void
dg_cli (FILE * fp, int sockfd, const pservaddr SA *, socklen_t servlen)
(
int n;
char sendline [MAXLINE], recvline [MAXLINE + 1];
while (fgets (sendline, MAXLINE, fp)! \u003d NULL) (
sendto (sockfd, sendline, strlen (sendline), 0, pservaddr, servlen);
n \u003d recvfrom (sockfd, recvline, MAXLINE, 0, NULL, NULL);
recvline [n] \u003d 0; / * null fin * /
fputs (recvline, stdout);
)
)

Quand je lance le code ci-dessus, 10.1.2.255 est l'adresse de diffusion, et l'apport d'une ligne, comme suit:
$ ./udpcli01 10.1.2.255
Salut

Il devrait recevoir de nombreuses machines de réponse, mais je ne reçois pas de message!
Si je ping 10.1.2.255, je reçois beaucoup de machine message de réponse, pourquoi mon code ne peut pas recevoir de message? Comment puis-je modifier le code ci-dessus pour recevoir le message?

Merci d'avance!
  #2 (permalink)  
Old 12-10-2008
fpmurphy's Avatar
fpmurphy fpmurphy is offline Forum Staff  
Modérateur
  
 

Join Date: Dec 2003
Lieu: Florida
Messages: 1920
Restez à l'écart des émissions réalisé, ils sont dangereux. Utilisez plutôt 255.255.255.255.

Note 255.255.255.255 était initialement destiné à être utilisé pour diffuser à chaque noeud de l'Internet. Il a été rapidement trouvé à être une mauvaise idée et a été modifié dans le sens de «diffusion limitée» pour être envoyé sur le lien local seulement. Voir la RFC 1122.
  #3 (permalink)  
Old 12-14-2008
Odys odys is offline
Registered User
  
 

Join Date: Feb 2005
Posts: 59
Salut, vous devez définir SO_BROADCAST option pour la prise de «setsockopt fonction.
Et vous avez besoin de serveur approprié pour répondre ...
Closed Thread

Bookmarks

Thread Tools Recherche sur ce Thread
Recherche sur ce Thread:

Recherche avancée
Modes d'affichage Rate this thread
Rate this thread:

Règles de messages
Tu mai pas de nouvelles discussions: nonoui
Tu mai pas envoyer des réponses:
Tu mai pas envoyer des pièces jointes
Tu mai pas modifier vos messages

BB code est Sur
Smilies sont Sur
[IMG] code est Sur
Le code HTML est Hors tension
Trackbacks sont Sur
Pingbacks sont Sur
Refbacks sont Sur




Toutes les heures sont au format GMT -4. Le temps est maintenant 09:50 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Traductions Langue Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
Les systèmes UNIX et Linux Forums Content Copyright © 1993-2009. Tous droits Reserved.Ad de gestion par RedTyger

Content Relevant URLs par vBSEO 3.2.0