Forçar o SQL Server 2019/Ubunti a usar ipv4 em vez de ipv6

Forçar o SQL Server 2019/Ubunti a usar ipv4 em vez de ipv6

Estamos testando a usabilidade do SQL Server da Microsoft em servidores Linux para nossos produtos internos e tivemos um problema durante a configuração. Estamos tentando instalar e configurar o SQLServer 2019 (visualização) e conseguimos configurar o repositório e instalar os binários do sql server a partir dele. Porém, quando executamos sudo /opt/mssql/bin/mssql-conf setupe escolhemos a edição, ela fica parada por um tempo e ocorre erros. O registro mostra:

2019-05-21 14:07:57.08 spid22s     Error: 26024, Severity: 16, State: 1.
2019-05-21 14:07:57.08 spid22s     Server failed to listen on 'any' <ipv6> 1433. Error: 0x2742. To proceed, notify your system administrator.
2019-05-21 14:07:57.08 spid22s     Error: 17182, Severity: 16, State: 1.
2019-05-21 14:07:57.08 spid22s     TDSSNIClient initialization failed with error 0x2742, status code 0xa. Reason: Unable to initialize the TCP/IP listener. A socket operation encountered a dead network. 

O culpado é óbvio: a configuração tenta iniciar o servidor no <ipv6>, que nós, por motivos não relacionados a isso, desabilitamos nas caixas de produção. Precisamos que o SQL Server seja configurado e executado <ipv4>e não vejo nenhuma maneira de mudar isso usando mssql-config, conformeinstruções mssql-config.

Alguém já teve alguma experiência em configurar isso?

Responder1

Ok, encontrei uma solução no ambiente vars. Apenas use

sudo MSSQL_IP_ADDRESS=0.0.0.0 /opt/mssql/bin/mssql-conf setup

Isso também forçará a vinculação da configuração any <ipv4>após a reinicialização. Como esse comportamento parece indocumentado, deixarei isso aqui para a posteridade.

Responder2

sudo /opt/mssql/bin/mssql-conf set network.ipaddress 0.0.0.0

funciona também

Responder3

/opt/mssql/bin/mssql-conf set network.ipaddress 0.0.0.0

systemctl restart mssql-server

funciona bem !!

informação relacionada