Comparar IP`s con la finalidad si son del mismo segmento de red
Hola requiero de su ayuda apra realziar lo siguiente
estoy desarrolando una aplicacion de chat interno para una empresa la aplicacion ya funciona pero resulta que se require validad que las ips en comunicacion sean del mismo segmento de red yo se que por ejemplo si equipo a tiene 192.168.1.34 mascara 255.255.255.0 y el equipo b tiene 192.168.1.35 mascara 255.255.255.0 los equipos pertencen a la misma red al momento no he encontrado como obtener la mascara de sub red para programar la funcion que realize los comprativos de antemano muchas gracias |
Que tal rchavezh,
Dificilmente vas obtener la mascara de subred de la maquina que responde (si es que esta no la envía explicitamente el equipo que responde dentro de los mensajes que se intercambian), pero lo que si tienes es la IP Local, la Mascara Local y la IP del equipo que responde. Para saber si dos IP corresponden a la misma "subred", lo que unico que tienes que hacer es "aplicar binariamente la submascara de Red" que que tienes, si el resultado de cada segmento de la IP resultasen iguales entonces te encuentras en la misma "subred". Para obtener la informacion de tu red local (en realidad de todos los adaptadores de red conectados a tu maquina, y si es un equipo basado en windows) puedes usar las funciones de la API:GetAdaptersInfo Saludos |
Hola rchavezh.
Es como te explica juanelo, te pongo un código de aproximación como ejemplo:
Saludos :) |
La franja horaria es GMT +2. Ahora son las 07:25:59. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi