Vampire
03-07-2003, 09:18:43
Buenas para quien leea
En primera instancia cual es mi problema :
Bueno, estoy tratando de hacer un broad cast, es decir mandar un mensaje a todas las maquinas de una sub red, me hace falta que sea compatible con win 95 o mas.... Ya se como hacerlo pero para esto me hace falta tener el Ip de mi maquina y la mascara de red, aqui encontre como obtener el ip de un forma mas logica que la que tenia pero todavia debo la mascara. Con estos dos datos puedo calcular la direccion de broad cast.
Me pudieran decir como obtengo la mascara (Claro estoy hablando de codigo en C++, en Delphi o en Api) ???
Para quien le interece la solucion teniendo el ip y la mascara:
Primero que todo se toman todos los numeros, del numero Ip y se convierten a binario es decir para el numero:
192.168.17.67
se transformaria en:
11000000.10101000.00010001.01000011
la posible mascara:
255.255.255.0
se transforma en:
11111111.11111111.11111111.00000000
Se hace un and logico digito a digito, entre el Ip y la mascara para obtener el Ip de la red:
11000000.10101000.00010001.00000000
Que seria en decimal el numero:
192.168.17.0
Luego de derecha a izquierda mientras exista 0 en la mascara se cambian por 1 en el Ip de la red, obteniendo en el ejemplo. Asi es entonces que se obtiene la direccion de Broad Cast:
11000000.10101000.00010001.11111111
Que seria en decimal el numero:
192.168.17.255
Y esto es todo. Dar la implementacion me parece tedioso y largo.
En primera instancia cual es mi problema :
Bueno, estoy tratando de hacer un broad cast, es decir mandar un mensaje a todas las maquinas de una sub red, me hace falta que sea compatible con win 95 o mas.... Ya se como hacerlo pero para esto me hace falta tener el Ip de mi maquina y la mascara de red, aqui encontre como obtener el ip de un forma mas logica que la que tenia pero todavia debo la mascara. Con estos dos datos puedo calcular la direccion de broad cast.
Me pudieran decir como obtengo la mascara (Claro estoy hablando de codigo en C++, en Delphi o en Api) ???
Para quien le interece la solucion teniendo el ip y la mascara:
Primero que todo se toman todos los numeros, del numero Ip y se convierten a binario es decir para el numero:
192.168.17.67
se transformaria en:
11000000.10101000.00010001.01000011
la posible mascara:
255.255.255.0
se transforma en:
11111111.11111111.11111111.00000000
Se hace un and logico digito a digito, entre el Ip y la mascara para obtener el Ip de la red:
11000000.10101000.00010001.00000000
Que seria en decimal el numero:
192.168.17.0
Luego de derecha a izquierda mientras exista 0 en la mascara se cambian por 1 en el Ip de la red, obteniendo en el ejemplo. Asi es entonces que se obtiene la direccion de Broad Cast:
11000000.10101000.00010001.11111111
Que seria en decimal el numero:
192.168.17.255
Y esto es todo. Dar la implementacion me parece tedioso y largo.