Direcciones IPs, Nuestra huella en la red
¿Qué es una dirección IP?
La dirección IP es como la direccion de la casa de una persona (o como el numero de telefono). Para poder comunicarse entre dos equipos es necesario que entre ellos se conozcan la IP. Por lo cual podemos deducir que si estan leyendo esto su maquina conoce de alguna forma (que ondaremos en otra oportunidad) la ip de donde se encuentra alojado este “hermoso” blog. Bien, veamos entonces, que aspecto tiene una dirección IP:
- Ejemplo IP de red local (LAN, Clase C) o IP privada: 192.168.0.1
- Ejemplo IP de red internet (Clase A) o IP pública: 80.58.0.33
- IP local (localhost), esta IP es común para todos los equipos: 127.0.0.1
Para poder ver la ip de nuestra PC podemos hacerlo de la siguiente forma. Abrimos la terminal y ejecutamos el siguiente comando:
ifconfig
dando como repuesta algo similar a lo siguiente:
enp0s31f6: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether d4:81:d7:5d:11:ad txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 16 memory 0xef200000-ef220000
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.20.10.4 netmask 255.255.255.240 broadcast 172.20.10.15
inet6 fe80::e106:f57f:60b7:7236 prefixlen 64 scopeid 0x20<link>
ether 0a:74:02:05:d6:66 txqueuelen 1000 (Ethernet)
RX packets 73535 bytes 82742885 (78.9 MiB)
RX errors 0 dropped 1 overruns 0 frame 0
TX packets 49526 bytes 6909629 (6.5 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 2644 bytes 208896 (204.0 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 2644 bytes 208896 (204.0 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlp1s0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether 34:f3:9a:d2:90:15 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Muchas distribuciones no traen instalado ifconfig por defecto (Gracias a Riky por remarcarlo) en ese caso tenemos dos opciones, instalarlo o usar ip la cua les su remplazo. Para instalarlo basta con instalar el paquete net-tools:
Ubuntu, Debian y Derivados
sudo apt install net-tools
Arch y Derivados
sudo pacman -S net-tools
Gentoo y Derivados
sudo emerge -s net-tools
y es el mismo paquete para todas las distribuciones, en caso de no tenerlo podemos ir a la segunda opcion (la mas recomendable) que es usar ip de la siguiente forma:
ip address
dando como repuesta algo similar a lo siguiente:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp0s31f6: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
link/ether d4:81:d7:5d:11:ad brd ff:ff:ff:ff:ff:ff
3: wlp1s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 34:f3:9a:d2:90:15 brd ff:ff:ff:ff:ff:ff
5: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 0a:74:02:05:d6:66 brd ff:ff:ff:ff:ff:ff
inet 172.20.10.4/28 brd 172.20.10.15 scope global noprefixroute dynamic eth0
valid_lft 80320sec preferred_lft 80320sec
inet6 fe80::e106:f57f:60b7:7236/64 scope link noprefixroute
valid_lft forever preferred_lft forever
En mi caso me encuentro conectado por Ethernet tengo la direccion IPv4 172.20.10.4 y la IPv6 fe80::e106:f57f:60b7:7236. En este caso la IP es privada por lo cual puedo tener otros dispositivos con la IP 172.20.10.X que se encuentren dentro de mi red. Sin embargo, nuestra ip publica es otra es decir que para internet esta IP no es validad dado que solo me identifica dentro de mi red local.
¿Cómo se convierte mi ip privada en una ip pública?
Supongamos que nuestro ordenador es el que tiene la IP 192.168.1.4 y quiere ver la web que tiene el ordenador 66.25.5.66 Entonces se producen los siguientes pasos:
- Nuestro PC (192.168.1.4) Contacta con su router, que es el elemento central que tiene 2 direcciones ips (192.168.1.1 y 80.52.14.5)
- Se crea un canal de conexión 192.168.1.4 <—-> 192.168.1.1 (PC <—-> Router)
- El router ahora conecta con el servidor web (66.25.5.66)
- Se crea un canal de conexión 80.52.14.5 —–> 66.25.5.66 (Router <—–> Servidor)
Estos pasos para el usuario son transparentes, pero ocurren.
¡PREGUNTA!
Ahora bien, para cerrar la publicación dejo abierto un tema. Fijaros que siempre que salimos a internet lo que hacemos es pedirle al router que salga por nosotros y que nos mantenga “seguros” detrás de el, esto significa una cosa, El servidor web, que en nuestro ejemplo tiene la dirección 66.25.5.66 no tiene forma de saber si el que ha pedido la web ha sido 192.168.1.5 o 192.168.1.x, es decir en internet nosotros somos 80.52.14.5 lo que hay “por debajo” de eso solo lo sabemos nosotros. Nuestra “direccion” o “numero telefonico” es 80.52.14.5. Esta IP es la que está asociada a la persona que ha contratado la linea, y de producirse algún delito esta persona sería la responsable. Así pues, ¿Tienes tu wifi abierto? Estás asumiento TODA la responsabililidad de lo que haga cualquiera que se conecte a tu red.
Contanos que opinas!!
PatoJAD
Arquitecto de SoftwareAutor
Sobre mi no hay mucho para decir, me dedico a desarrollar en una empresa de telecomunicaciones, utilizo GNU/Linux desde el 2.012 y hace años que es mi Sistema Operativo main. Soy una persona que busca crecer profesionalmente sin dejar de divertirse y hacer lo que me gusta. Siempre digo que cuando un proyecto sale es importante agradecer, por lo cual les recomiendo a todos leer la seccion Agradecimientos en la cual me tomé un tiempito para poder agradecer a todos y cada uno de los que hicieron posible todo esto.