7.1.13.4 Подключение с использованием адресов IPv6 нелокальных хостов
Следующая процедура показывает, как настроить MySQL для разрешения подключений IPv6 удаленными клиентами. Она похожа на предыдущую процедуру для локальных клиентов, но сервер и клиентские хосты являются отдельными и каждый из них имеет свой собственный нелокальный адрес IPv6. В примере используются следующие адреса:
Server host: 2001:db8:0:f101::1
Client host: 2001:db8:0:f101::2
Эти адреса выбраны из диапазона немаршрутизируемых адресов, рекомендуемого IANA для целей документации и подходят для тестирования в локальной сети. Для приема подключений IPv6 от клиентов за пределами локальной сети хост сервера должен иметь публичный адрес. Если ваш поставщик сети назначает вам адрес IPv6, вы можете его использовать. В противном случае другой способ получения адреса — использование прокси-сервера IPv6; см. раздел 7.1.13.5 «Получение адреса IPv6 от прокси-сервера».
-
Запустите сервер MySQL с соответствующим значением
bind_address, чтобы разрешить ему принимать подключения IPv6. Например, поместите следующие строки в файл опций сервера и перезапустите сервер:[mysqld] bind_address = *
Указание * (или
::) в качестве значения дляbind_addressразрешает подключения IPv4 и IPv6 на всех интерфейсах IPv4 и IPv6 хоста сервера. Если вы хотите привязать сервер к определенному списку адресов, вы можете сделать это, указав список значений через запятую дляbind_address. В этом примере указан IPv4-адрес и необходимый адрес IPv6 хоста сервера:[mysqld] bind_address = 198.51.100.20,2001:db8:0:f101::1
Дополнительную информацию см. в описании
bind_addressв разделе 7.1.8 «Системные переменные сервера». -
На хосте сервера (
2001:db8:0:f101::1) создайте учетную запись для пользователя, который может подключаться с хоста клиента (2001:db8:0:f101::2):mysql>
CREATE USER 'remoteipv6user'@'2001:db8:0:f101::2' IDENTIFIED BY 'remoteipv6pass'; -
На хосте клиента (
2001:db8:0:f101::2) вызовите клиент mysql для подключения к серверу с помощью новой учетной записи:$>
mysql -h 2001:db8:0:f101::1 -u remoteipv6user -premoteipv6pass -
Попробуйте несколько простых операторов, которые показывают информацию о подключении:
mysql>
STATUS... Connection: 2001:db8:0:f101::1 via TCP/IP ... mysql>SELECT CURRENT_USER(), @@bind_address;+-----------------------------------+----------------+ | CURRENT_USER() | @@bind_address | +-----------------------------------+----------------+ | remoteipv6user@2001:db8:0:f101::2 | :: | +-----------------------------------+----------------+
© 2025 Oracle
Licensed under the GPLv2 License.