Geoip dat где лежит centos 7

Обновлено: 02.07.2024

Инструкция применима к CentOS версий 7 и 8, CentOS mini (минимальная сборка), Fedora.

Базовая настройка сети

Смотрим все установленные сетевые адаптеры в системе:

В результате получаем что-то подобное:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
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
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:50:56:81:28:3c brd ff:ff:ff:ff:ff:ff
inet 192.168.156.22/22 brd 192.168.159.255 scope global ens32
valid_lft forever preferred_lft forever
3: ens34: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:50:56:81:3f:22 brd ff:ff:ff:ff:ff:ff
inet 10.243.254.68/26 brd 10.243.254.127 scope global ens34
valid_lft forever preferred_lft forever

* Из примера видно, что в моем CentOS есть 3 сетевых карты — lo (локальная петля), ens32 и ens34 — сетевые Ethernet адаптеры.

Если нужно настроить сеть для адаптера ens32, открываем на редактирование следующий конфигурационный файл:

И приводим его к следующему виду:

DEVICE=ens32
BOOTPROTO=static
IPADDR=192.168.0.155
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
DNS1=192.168.0.54
DNS2=192.168.0.11
ONBOOT=yes

. а также для CentOS 8 добавим:

Основные опции

Опция Описание Возможные значения
DEVICE Имя сетевого адаптера Должно совпадать с именем в системе. В данном примере ens32
BOOTPROTO способ назначения IP-адреса static: ручное назначение IP, dhcp: автоматическое получение IP
IPADDR IP-адрес адрес, соответствующий вашей сети
NETMASK Сетевая маска должна соответствовать вашей сети
GATEWAY Шлюз по умолчанию IP-адрес сетевого шлюза
DNS1 Основной DNS-сервер IP-адрес сервера имен
DNS2 Альтернативный DNS-сервер IP-адрес сервера имен
ONBOOT Способ запуска сетевого интерфейса yes: автоматически при старте сервера, no: запускать вручную командой
NM_CONTROLLED Указываем, должен ли интерфейс управляться с помощью NetworkManager yes: управляется NetworkManager, no: не может управляться NetworkManager

Чтобы настройки применились, перезапускаем сетевую службу.

systemctl restart network

б) для CentOS 8 вводим 2 команды:

systemctl restart NetworkManager

nmcli networking off; nmcli networking on

* в большей степени, это основное отличие версий 7 и 8. Чтобы команды смогли поменять настройки, для интерфейсов необходима настройка NM_CONTROLLED=yes.

Дополнительные опции (не обязательны для работы сети)

Настройка сети из консоли (командами)

Настройка из консоли будет работать только до перезагрузки системы. Ее удобно применять для временного конфигурирования или проведения тестов.

Назначение IP-адреса или добавление дополнительного к имеющемуся:

ip a add 192.168.0.156/24 dev ens32

* в данном примере к сетевому интерфейсу ens32 будет добавлен IP 192.168.0.156.

Изменение IP-адреса:

ip a change 192.168.0.157/24 dev ens32

* однако, по факту, команда отработает также, как add.

Удаление адреса:

ip a del 192.168.163.157/24 dev ens32

Добавление маршрута по умолчанию:

ip r add default via 192.168.0.1

Добавление статического маршрута:

ip r add 192.168.1.0/24 via 192.168.0.18

Удаление маршрутов:

ip r del default via 192.168.160.1

ip r del 192.168.1.0/24 via 192.168.0.18

Команда ifconfig

В новых версиях CentOS утилита ifconfig не установлена и при вводе одноименной команды можно увидеть ошибку «Команда не найдена». Необходимо либо воспользоваться командой ip (ip address), либо установить утилиту ifconfig.

yum install ifconfig

yum install net-tools

Настройка WiFi

Принцип настройки беспроводной сети на CentOS не сильно отличается от проводной.

Создаем конфигурационный файл со следующим содержимым:

ESSID="dmoskwifi"
MODE=Managed
KEY_MGMT=WPA-PSK
TYPE=Wireless
BOOTPROTO=none
NAME=dmoskwifi
ONBOOT=yes
IPADDR=192.168.1.50
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=192.168.1.1
DNS2=77.88.8.8

* где dmoskwifi — название WiFi сети (SSID).

Несколько IP на одном сетевом адаптере

В зависимости от версии операционной системы, дополнительные адреса добавляются посредством:

  1. Псевдонимов — создание нового виртуального интерфейса с названием <имя интерфейса>:<номер>.
  2. Добавлением IPADDRx и NETMASKx в конфигурационном файле.

Рассмотрим оба варианта подробнее.

Создание псевдонимов (более ранние версии CentOS 7 и ниже)

Создаем новый конфигурационный файл для сетевого интерфейса:

DEVICE=ens32:1
BOOTPROTO=static
IPADDR=192.168.0.156
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
DNS1=192.168.0.54
DNS2=192.168.0.11
ONBOOT=yes

* где ens32 — имя физического интерфейса, :1 — виртуальный номер.

Перезапускаем сетевые службы.

Настройка конфигурационного файла (поздние версии CentOS 7 и выше)

Открываем конфигурационный файл для сетевого интерфейса, например:

DEVICE=ens32
BOOTPROTO=static
IPADDR=192.168.0.155
NETMASK=255.255.255.0
IPADDR1=192.168.0.156
NETMASK1=255.255.255.0
IPADDR2=192.168.0.157
NETMASK2=255.255.255.0
GATEWAY=192.168.0.1
DNS1=192.168.0.54
DNS2=192.168.0.11
ONBOOT=yes

* где ens32 — имя физического интерфейса, дополнительные адреса задаются с помощью опций IPADDR1, IPADDR2, NETMASK1, NETMASK2.

Перезапускаем сетевые службы.

Для автоматического получения IP-адреса от сервера DHCP мы должны задать следующее значение для опции BOOTPROTO в конфигурационном файле:

* в наших примерах выше данный параметр имеет значение static.

Переопределение DNS с помощью dhclient.conf

Также мы можем переопределять настройки для DHCP с помощью конфигурационного файла. Например, если мы хотим, чтобы адреса DNS были заданы определенные, а не полученны от DHCP, открываем конфиг:

interface "enp0s3"
supersede domain-name-servers 8.8.8.8, 8.8.4.4;
>

* где enp0s3 — имя сетевого интерфейса, который будет получать адрес от сервера DHCP. 8.8.8.8, 8.8.4.4 — адреса, которые будут настоены на интерфейсе, независимо от того, какие предложит сервер DHCP.

Или мы можем использовать адреса от DHCP, но сделать приоритетными свои:

interface "enp0s3"
prepend domain-name-servers 127.0.0.1;
>

* в данном примере, мы зададим в качестве основного сервера DNS — 127.0.0.1.

Чтобы данный метод сработал в CentOS 8, необходимо открыть файл:

В раздел [main] добавить:

Переопределение DNS в NetworkManager (альтернативный способ)

Метод, описанный выше по переопределению DNS не подходит для NetworkManager без изменения настройки dhcp, так как адреса будут получены и обработаны с помощью встроенных методов. Выше, предоставлено решение в виде настройки dhcp=dhclient, однако мы рассмотрим альтернативный способ, на случай, если кому-то это пригодится.

Информация берётся из специальной базы, лучшая из которых находиться на сайте MaxMind.

В настоящее время существует множество разных скриптов и плагинов к скриптам, которые в своей работе используют именно это расширение. Однако некоторым из них достаточно работы GeoIP как модуля apache (mod_geoip) а некоторым этого мало и они хотят расширения GeoIP в PHP или Perl.

Следующая инструкция подойдет для установки GeoIP на CentOS, RedHat, Fedora с панелью управления WHM/CPanel

Все действия делаются в командной строке на сервере по SSH

1. Добавляем репозиторий EPHEL: Сайт

CentOS 5

для i386

CentOS 6

для i386

для x86_64 (64-битной системе)

2. Устанавливаем GeoIP при помощи yum:

yum install geoip geoip-devel

3. Скачиваем базы IP адресов, создаем директорию для баз и копируем в нужное место:

mkdir /usr/local/share/GeoIP
cd /usr/local/share/GeoIP

Последние базы, и правильность названия файлов, можно посмотреть на сайте

4. Устанавливаем модуль mod_GeoIP для Apache на сервер или VPS

Пересобираем Apache и выбираем модуль GeoIP


Это можно сделать и через WHM, в разделе Software > EasyApache (Apache Update)

Установка займет от 20-40 минут, зависит от загруженности и производительности сервера/vps

5. Подгружаем модуль mod_GeoIP в Apache

GeoIPEnable On
GeoIPDBFile /usr/local/share/GeoIP/GeoIP.dat
GeoIPDBFile /usr/local/share/GeoIP/GeoLiteCity.dat
GeoIPDBFile /usr/local/share/GeoIP/GeoIPv6.dat

Это можно сделать и в WHM в разделе Service Configuration > Include Editor > Pre VirtualHost Include (All Versions)

6. Устанавливаем расширение GeoIP как модуль php

Если же GeoIP нужен как модуль php, то проделываем следующее:

Открываем файл php.ini

Добавить туда строку:
extension=geoip.so
добавляем где то к концу файла, где подгружаются различные расширение

Проверить то, что модуль установлен и корректно работает можно командой php -m или php -m | grep geoip

Так же можете создать файл с выводом phpinfo на сервере, и отобразить это через браузер.

7. Устанавливаем GeoIP как модуль perl (если нужен)

Устанавливаем:
pear install Net_GeoIP-1.0.0RC3

Путь к бинарному файлу:
/usr/local/bin/geoiplookup
/usr/local/bin/geoiplookup6

На этом установка закончена!

P.S. , может кому понадобится, так тоже работает

Есть вариант не пересобирать Apache через EasyApache а сделать так:

Скачиваем последнюю версию модуля с сайта maxmind и устанавливаем, в место 4-го пункта описанного выше.

я хочу использовать от geoip, чтобы, например, получить страну домена или страну ip.

как установить GeoIp на php 7.0.5 в centos?

если php 7 не имеет geoip, то как получить страну домена или страну ip и . ?

пожалуйста, помогите мне.

1 ответ

Кто-нибудь пытался установить geoip поверх pecl на 64-битную коробку? Я могу установить geoip просто отлично, используя эти команды на моей 32-битной коробке fedora. Я не могу на 64-битной версии. Есть идеи, почему? ням установить сделать gcc КПП gcc-c++ библиотеку glibc версии glibc-headers и.

Я уже установил mongoDB на свой VPS. Это хорошо работает. Теперь я хочу установить драйвер php, чтобы заставить php работать с mongoDB. Я следил за установкой Монго , но не могу найти нужную мне информацию. Данное руководство содержит только это уведомление: Если вы используете CentOS или Redhat.

Я рад помочь. Я только что обновился до php7, и у меня есть способ, который работает

••1•• Во-первых, загрузите GeoCityLite

короче говоря -> в вашем terminal :

cd (путь, по которому вы хотите установить geoip, как ine /etc/. )

php composer.phar требуется geoip2/geoip2:

••3•• Чем, в вашем php это выглядит так :

Я надеюсь, что это поможет

Похожие вопросы:

Я использую Django, и когда я использую пакет geoip или импортирую GeoIP, я получаю следующую ошибку на centos, в то время как он хорошо работает на ubuntu 12.04. Ошибка заключается в следующем from.

Я узнал об этом расширении PHP за несколько дней. Кто-нибудь может объяснить мне, как установить GeoIP на WAMP?

Как установить mbstring с PHP на CentOS 6.2 Я пытался: $ sudo yum install php-mbstring Loaded plugins: fastestmirror, security Loading mirror speeds from cached hostfile * base.

Кто-нибудь пытался установить geoip поверх pecl на 64-битную коробку? Я могу установить geoip просто отлично, используя эти команды на моей 32-битной коробке fedora. Я не могу на 64-битной версии.

Я уже установил mongoDB на свой VPS. Это хорошо работает. Теперь я хочу установить драйвер php, чтобы заставить php работать с mongoDB. Я следил за установкой Монго , но не могу найти нужную мне.

Кто-нибудь знает, как установить GeoIP's C library на Windows в несколько простых шагов? Достаточно даже нескольких сложных шагов. Я исследовал и попытался скомпилировать его из установочного файла.

Репозитории CentOS - хранилища программного обеспечения в виде упакованных файлов, так называемых RPM-пакетов.

RPM-пакет - представляет из себя файл формата ".rpm", расширение указывает на принадлежность файла менеджеру пакетов Red Hat (Red Hat Package Manager), позволяющего устанавливать программное обеспечение на Red Hat/CentOS системы.

Нужные для установки пакеты загружаются из репозиториев посредством пакетного менеджера YUM, после чего происходит дальнейшая распаковка и установка.

Репозитории могут быть официальными и дополнительными. Если программное обеспечение не доступно в официальных репозиториях, можно прибегнуть к помощи дополнительных. Бывает что версии пакетов содержащихся в дополнительных репозиториях, являются более свежими чем версии в официальных.

Наиболее популярными и распространенными являются следующие репозитории:

CentOS Official Repository - официальный репозиторий.

EPEL - Extra Packages for Enterprise Linux - хранилище пакетов команды Fedora. Содержит пакеты дополнительного программного обеспечения для таких систем как: RHEL, SentOS, Scientific Linux. Пакеты этого репозитория не конфликтуют с родными пакетами RHEL и не заменяют их. Самый ходовой и популярный репозиторий.

ElRepo - пакеты для RHEL, SentOS, Scientific Linux. В хранилище представлены последние версии драйверов для: графических, звуковых, сетевых карт, веб камер и прочей периферии.

REMI - специализируется по MySQL и PHP. Пакеты этого репозитория могут заменять базовые пакеты, поэтому с ними надо поосторожнее.

Управление репозиториями в CentOS

Управление пакетами и репозиториями осуществляет утилита YUM (Yellowdog Updater, Modified) - менеджер RPM-пакетов, использующийся в дистрибутивах: RHEL, SentOS, Scientific Linux. В его задачи входит: поиск, установка, удаление пакетов, обновление системы.

Процесс установки пакетов происходит после выполнения команды - yum install packagename. После ввода команды менеджер пакетов проверяет наличие конфигурационных файлов "*.repo", эти файлы содержат информацию о репозиториях и хранятся в директории /etc/yum.repos.d. Во время проверки YUM получает всю необходимую информацию, указывающую откуда загружать пакет и какие зависимости имеют к нему отношение. После чего происходит установка пакета.

Конфигурационные файлы репозиториев содержат следующие параметры:

Подключение репозиториев в CentOS

Добавить репозиторий в CentOS можно несколькими способами. Можно создать файл ".repo" в директории /etc/yum.repos.d или установить rpm-пакет с информацией о репозитории. Если rpm-пакет отсутствует, то добавлять приходится ручками, создавая конф. файл репозитория.

Для просмотра списка активных репозиториев выполняют команду - yum repolist

Удаление репозиториев в CentOS

Для удаления репозиториев в системе должен быть установлен пакет yum-utils.

Допустим мы хотим удалить из системы репозитории REMI и ELRepo, для этого надо узнать "repo id" при помощи команды yum repolist.

Удалим указанные репозитории.

Команда скорее отключает указанные репозитории, чем удаляет их. Она выставляет значение параметра enabled равным 0. Файлы репозиториев ".repo" останутся на месте. Если выполнить команду yum repolist, то репозитории будут недоступны.

Теперь нужно обновить кэш YUM.

Для полного удаления репозиториев следует удалить их конфигурационные файлы.

Добавление репозитория EPEL

EPEL - самый простой в установке репозиторий. Epel-release package включен в стандартный Extras repository и доступен по умолчанию. Для его установки достаточно выполнить команду:

В процессе установки будет создан файл "epel.repo", который будет содержать все данные для работы с репозиторием. Выполним команду выводящую содержимое файла.

Добавление репозитория ELRepo

Сначала устанавливаем GPG ключ.

Устанавливаем rpm-файл репозитория.

Добавление репозитория REMI

Установка репозитория REMI происходит в несколько этапов. Для выполнения команды, у вас должна быть установлена утилита wget.

Существуют и другие репозитории, процесс их установки будет таким же. Все нужные ссылки, как правило, указываются на страничке проектов, так же как и инструкции по установке.

Читайте также: