Нека погледнем резултата на команда
/sbin/ifconfig -а
Резултат
eth0 Link encap:Ethernet HWaddr 00:18:f3:ac:1e:77 UP BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) Interrupt:17 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:1642 errors:0 dropped:0 overruns:0 frame:0 TX packets:1642 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:109064 (109.0 KB) TX bytes:109064 (109.0 KB) wlan0 Link encap:Ethernet HWaddr 00:1f:1f:6d:fe:85 inet addr:10.0.0.9 Bcast:10.0.0.255 Mask:255.255.255.0 inet6 addr: fe80::21f:1fff:fe6d:fe85/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:55687 errors:0 dropped:0 overruns:0 frame:0 TX packets:38545 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:42167229 (42.1 MB) TX bytes:6198979 (6.1 MB)
eth0 е името на мрежовата ми карта (ethernet card).
wlan0 е името на безпроводната ми мрежова карта (wireless lan). Нулата (0) е поредния номер на карата и правилото идва от света на програмирането, за разлика от човешкото възприятие, където първи се отбелязва с 1.
lo е името на вътрешния логически адрес на local хост.
За повече подробности прочетете книгата на Scott Granneman - Linux Phrasebook.
Обърнете внимание на израз inet addr. Той отсъства в резултата на eth0. Това говори, че връзката ми е безпроводна.
10.0.0.9 е адреса на моята машина в вътрешната мрежа, зададен от DHCP-сървъра на рутера.
Сходен резултат ще получим с команда аналог на горната.
ip addr show
Ако искаме резултата от конкретна карта, просто добавяме името й.
ip addr show eth0
Разбира се, нещата може да се филтрират в отговора, като се подаде изходния поток към входа на команда grep и съответен регулярен израз.
ifconfig | grep 'inet addr:'
Резултат
inet addr:127.0.0.1 Mask:255.0.0.0 inet addr:10.0.0.9 Bcast:10.0.0.255 Mask:255.255.255.0
Или да станат още по-лаконични.
ifconfig | grep "inet addr" | awk -F: '{print $2}' | awk '{print $1}'
Резултат
127.0.0.1 10.0.0.9
Определяне на външен IP адрес
До тук се научихме как да узнаем вътрешния си IP адрес през терминала. За външния ще се позовем на утилита wget. И пак от препоръчаната книга горе може да се запознаете по-подробно с нейните възможности.Wget е свободна неинтерактивна конзолна програма за теглене на файлове от мрежата. Поддържа протоколи HTTP, FTP и HTTPS, а още работа през HTTP прокси-сървър.
Има налични ресурси в интернет, чийто сервизи предлагат разпознаване на вашия IP адрес. Обикновена заявка към тях през браузър е достатъчна. В терминала това се свежда до следната команда.
wget -qO- ifconfig.me/ip
Този адрес намирам за муден.
Може да опитате тук,
wget -qO- ipecho.net/plain && echo
или тук.
wget -qO- bot.whatismyipaddress.com && echo
Ако имате инсталиран curl, давайте така,
curl ifconfig.me
може още така.
curl bot.whatismyipaddress.com && echo
А тук един хитър начин за филтриране на HTML-тагове.
curl -s http://checkip.dyndns.org/ | sed 's/[a-zA-Z<>/ :]//g'
Промяна името на мрежовия адаптор
Ако по някакво ваше хрумване изявите желание да промените имената на интерфейсите eth0 или wlan0 на нещо индивидуално, това не е проблем. Остава да редактирате имената им в файл 70-persistent-net.rules. И командата е.sudo gedit /etc/udev/rules.d/70-persistent-net.rules.
При мен резултатът е следния.
# PCI device 0x11ab:0x4364 (sky2) SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:18:f3:ac:1e:77", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0" # PCI device 0x1814:0x0301 (rt61pci) SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:1f:1f:6d:fe:85", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="wlan*", NAME="wlan0"След смяна на името, съхранете файла и рестартирайте машината, за да влязат измененията в сила.
до нови срещи ^.^
0 Response to "Какво е моето IP"
Публикуване на коментар