No, that’s not true. I do have an IPv4 address, and IPv4-only sites work just fine, including HTTPS sites. Here’s an example IPv4-only HTTPS site that works just fine here: https://ipv4.jamieweb.net/
Literally all other web services I use work. manjaro.news is the only one that doesn’t.
OK, what’s the difference here?
[alex@alex-pc ~]$ curl -4 --verbose https://manjaro.news/news -d '{"MaxItems":1,"Categories":["All"]}'
* Host manjaro.news:443 was resolved.
* IPv6: (none)
* IPv4: 62.182.81.28
* Trying 62.182.81.28:443...
* Connected to manjaro.news (62.182.81.28) port 443
* ALPN: curl offers h2,http/1.1
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
* CAfile: /etc/ssl/certs/ca-certificates.crt
* CApath: none
* TLSv1.3 (IN), TLS handshake, Server hello (2):
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
* TLSv1.3 (IN), TLS handshake, Certificate (11):
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
* TLSv1.3 (IN), TLS handshake, Finished (20):
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
* TLSv1.3 (OUT), TLS handshake, Finished (20):
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384 / x25519 / id-ecPublicKey
* ALPN: server accepted h2
* Server certificate:
* subject: CN=manjaro.news
* start date: Jul 13 11:09:40 2024 GMT
* expire date: Jan 8 22:59:00 2025 GMT
* subjectAltName: host "manjaro.news" matched cert's "manjaro.news"
* issuer: C=NO; O=Buypass AS-983163327; CN=Buypass Class 2 CA 5
* SSL certificate verify ok.
* Certificate level 0: Public key type EC/prime256v1 (256/128 Bits/secBits), signed using sha256WithRSAEncryption
* Certificate level 1: Public key type RSA (4096/152 Bits/secBits), signed using sha256WithRSAEncryption
* Certificate level 2: Public key type RSA (4096/152 Bits/secBits), signed using sha256WithRSAEncryption
* using HTTP/2
* [HTTP/2] [1] OPENED stream for https://manjaro.news/news
* [HTTP/2] [1] [:method: POST]
* [HTTP/2] [1] [:scheme: https]
* [HTTP/2] [1] [:authority: manjaro.news]
* [HTTP/2] [1] [:path: /news]
* [HTTP/2] [1] [user-agent: curl/8.8.0]
* [HTTP/2] [1] [accept: */*]
* [HTTP/2] [1] [content-length: 35]
* [HTTP/2] [1] [content-type: application/x-www-form-urlencoded]
> POST /news HTTP/2
> Host: manjaro.news
> User-Agent: curl/8.8.0
> Accept: */*
> Content-Length: 35
> Content-Type: application/x-www-form-urlencoded
>
* upload completely sent off: 35 bytes
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
* old SSL session ID is stale, removing
* HTTP/2 stream 1 was not closed cleanly: PROTOCOL_ERROR (err 1)
* Connection #0 to host manjaro.news left intact
curl: (92) HTTP/2 stream 1 was not closed cleanly: PROTOCOL_ERROR (err 1)
[ble: exit 92]
[alex@alex-pc ~]$ curl -6 --verbose https://manjaro.news/news -d '{"MaxItems":1,"Categories":["All"]}'
* Host manjaro.news:443 was resolved.
* IPv6: 2a09:2dc0:0:100::1
* IPv4: (none)
* Trying [2a09:2dc0:0:100::1]:443...
* Connected to manjaro.news (2a09:2dc0:0:100::1) port 443
* ALPN: curl offers h2,http/1.1
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
* CAfile: /etc/ssl/certs/ca-certificates.crt
* CApath: none
* TLSv1.3 (IN), TLS handshake, Server hello (2):
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
* TLSv1.3 (IN), TLS handshake, Certificate (11):
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
* TLSv1.3 (IN), TLS handshake, Finished (20):
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
* TLSv1.3 (OUT), TLS handshake, Finished (20):
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384 / x25519 / id-ecPublicKey
* ALPN: server accepted h2
* Server certificate:
* subject: CN=manjaro.news
* start date: Jul 13 11:09:40 2024 GMT
* expire date: Jan 8 22:59:00 2025 GMT
* subjectAltName: host "manjaro.news" matched cert's "manjaro.news"
* issuer: C=NO; O=Buypass AS-983163327; CN=Buypass Class 2 CA 5
* SSL certificate verify ok.
* Certificate level 0: Public key type EC/prime256v1 (256/128 Bits/secBits), signed using sha256WithRSAEncryption
* Certificate level 1: Public key type RSA (4096/152 Bits/secBits), signed using sha256WithRSAEncryption
* Certificate level 2: Public key type RSA (4096/152 Bits/secBits), signed using sha256WithRSAEncryption
* using HTTP/2
* [HTTP/2] [1] OPENED stream for https://manjaro.news/news
* [HTTP/2] [1] [:method: POST]
* [HTTP/2] [1] [:scheme: https]
* [HTTP/2] [1] [:authority: manjaro.news]
* [HTTP/2] [1] [:path: /news]
* [HTTP/2] [1] [user-agent: curl/8.8.0]
* [HTTP/2] [1] [accept: */*]
* [HTTP/2] [1] [content-length: 35]
* [HTTP/2] [1] [content-type: application/x-www-form-urlencoded]
> POST /news HTTP/2
> Host: manjaro.news
> User-Agent: curl/8.8.0
> Accept: */*
> Content-Length: 35
> Content-Type: application/x-www-form-urlencoded
>
* upload completely sent off: 35 bytes
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
* old SSL session ID is stale, removing
< HTTP/2 200
< server: nginx
< date: Sun, 14 Jul 2024 20:46:11 GMT
< content-type: text/plain; charset=utf-8
< content-length: 289
< x-robots-tag: none
< strict-transport-security: max-age=63072000; includeSubDomains; preload
<
[
{
"GUID": "forum.manjaro.org-topic-165427",
"URL": "https://forum.manjaro.org/t/testing-update-2024-07-14-tbd/165427",
"Title": "[Testing Update] 2024-07-14 - TBD",
"Category": "Testing Updates",
"PublishedDate": "2024-07-13T18:12:17Z"
}
* Connection #0 to host manjaro.news left intact
][ble: EOF]
The only difference I see here is that the response from the server is different. The server says there’s a protocol error in the IPv4 one, but responds just fine in the IPv6 one. In the IPv4 one, the IPv4 address resolves just fine and the SSL handshake seems to work just fine, but the server fails to respond correctly.