Как узнать свой IP адрес
IP-адреса используются чтобы идентифицировать компьютеры с сети. Существуют локальный IP адрес, и внешний предоставляемый провайдером IP адрес вашего сервера, через который из сети интернет и приходят пакеты, в вашу локальную сеть. Обычно на несколько сотен пользователей, и соответственно столько же локальных сетей, провайдером выделяется один внешний IP с помощью технологии NAT, которая и регулирует правильный обмен данными.
Проще говоря, это фрактальное дело работает идентичным образом, как у вас дома. А именно, ваш домашний роутер, с помощью той же технологии , раздаёт ip адреса всем подключённым устройствам, и все они выходят в сеть с ip адресом вашего роутера. Который в свою очередь получен внешним устройством по технологии NAT. Таким образом мы доходим до крайнего узла, который подключён к сети интернет напрямую. Этот адрес является динамическим, который может меняться время от времени, это стоит учитывать если вы планируете, что-то настраивать...
IP этого крайнего узла, дальше мы его будем называть наш внешний IP адрес.
1)Итак начнём по порядку, с самого начала наших IP адресов:
Есть IP адрес используемый только для внутренних коммуникаций в системе, например вы можете на своём компьютере поднять web-сервер и обращаться к нему с этого же компьютера в качестве клиента. Этот вообще адрес не доступен извне, поскольку у каждого хоста он, вообще говоря, одинаковый 127.0.0.1 также он доступен по доменному имени localhost.
Как узнать внутренний IP адрес:
☯
Terminal:
⌕
≡
✕
user@mx:~ $ nslookup localhost Server: 192.168.0.1 Address: 192.168.0.1#53 Name: localhost Address: 127.0.0.1 Name: localhost Address: ::1
Внимание ip адрес Server, в данном случае, это локальный IP адрес нашего роутера.
2)Узнаём свой локальный IP адрес.
В данном случае мы можем увидеть много разной информации, особенно если на хосте полным полно сетевых интрефесов и служб из использующих. Искомый нами адрес, будет в той же сети, что и наш роутер, который его нам выдаёт.
Этот адрес может пригодиться, например если вы создали файловый сервер, или тот же web-сервер, но для коллективного доступа из вашей локальной сети. Или если вы настроили видео-сервер и подключаете к нему локальные IP камеры.
Данные ip адреса доступны из локальной сети, все участники могут видеть и пинговать друг-друга, но они всё-же не доступны из интернета.
или
☯
Terminal:
⌕
≡
✕
user@mx:~ $ sudo ifconfig docker0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 inet 172.17.0.1 netmask 255.255.0.0 broadcast 172.17.255.255 ether XX:cX:aX:4X:X4:0X txqueuelen 0 (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 eth0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 ether XX:cX:aX:4X:X4:0X 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 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 417 bytes 32397 (31.6 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 417 bytes 32397 (31.6 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255 ether XX:cX:aX:4X:X4:0X txqueuelen 1000 (Ethernet) RX packets 929670 bytes 1087524751 (1.0 GiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 411193 bytes 40042043 (38.1 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.0.20 netmask 255.255.255.0 broadcast 192.168.0.255 inet6 fe80::7ef8:fd87:501:5965 prefixlen 64 scopeid 0x20<link> ether XX:cX:aX:4X:X4:0X txqueuelen 1000 (Ethernet) RX packets 639089 bytes 620906586 (592.1 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 468162 bytes 75460146 (71.9 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
user@mx:~ $ ip addres 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: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000 link/ether 3c:7c:3f:5b:0b:0a brd ff:ff:ff:ff:ff:ff 3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether d8:c0:a6:42:a4:03 brd ff:ff:ff:ff:ff:ff inet 192.168.0.20/24 brd 192.168.0.255 scope global dynamic noprefixroute wlan0 valid_lft 79283sec preferred_lft 79283sec inet6 fe80::7ef8:fd87:501:5965/64 scope link noprefixroute valid_lft forever preferred_lft forever 4: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default link/ether 02:42:51:e6:5b:f2 brd ff:ff:ff:ff:ff:ff inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0 valid_lft forever preferred_lft forever 5: virbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether 52:54:00:fa:b7:a6 brd ff:ff:ff:ff:ff:ff inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0 valid_lft forever preferred_lft forever 10: vnet4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master virbr0 state UNKNOWN group default qlen 1000 link/ether fe:54:00:a2:de:9c brd ff:ff:ff:ff:ff:ff inet6 fe80::fc54:ff:fea2:de9c/64 scope link valid_lft forever preferred_lft forever
Видим, что в данном случае локальный адрес 192.168.0.20, и адрес шлюза для этой сети соответственно 192.168.0.1. На данном хосте есть шлюзы и для других сетей, но нас сейчас интересует только локальный ip адрес.
можно немного грепнуть(сократить с помощью фильтрации) этот вывод
☯
Terminal:
⌕
≡
✕
user@mx:~ $ sudo ifconfig | grep "inet" inet 172.17.0.1 netmask 255.255.0.0 broadcast 172.17.255.255 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255 inet 192.168.0.20 netmask 255.255.255.0 broadcast 192.168.0.255 inet6 fe80::7ef8:fd87:501:5965 prefixlen 64 scopeid 0x20<link>
3)Узнать внешний ip адрес из консоли Linux
IP крайнго узла, дальше мы его будем называть наш внешний IP адрес, нам и нужно узнать,для настройки определённых служб, например сервера VPN для нашего клиента.
Ну, а теперь узнаём внешний IP для этого естественно нужен будет активный доступ к интернету.
Данный метод работоспособен для Ubuntu, Centos, Gentoo и прочих дистрибутивов:
☯
Terminal:
⌕
≡
✕
user@mx:~ $ curl ifconfig.me 77.777.888.33
Именно ради получения этого внешнего ip адреса, в основном и была написана эта статья.
-
- Roman Sakhno
Комментарии (0):
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.