[GH-ISSUE #2424] [FR] Resolve IPv4/v6 Only Option #1197

Closed
opened 2026-03-04 01:52:07 +03:00 by kerem · 5 comments
Owner

Originally created by @jyxjjj on GitHub (Feb 27, 2024).
Original GitHub issue: https://github.com/s3fs-fuse/s3fs-fuse/issues/2424

Version of s3fs being used (s3fs --version)

Amazon Simple Storage Service File System V1.93 (commit:unknown) with OpenSSL
Copyright (C) 2010 Randy Rizun <rrizun@gmail.com>
License GPL2: GNU GPL version 2 <https://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Version of fuse being used (pkg-config --modversion fuse, rpm -qi fuse or dpkg -s fuse)

Name        : fuse
Version     : 2.9.9
Release     : 17.fc39
Architecture: x86_64
Install Date: Mon 26 Feb 2024 06:01:56 PM +08
Group       : Unspecified
Size        : 224031
License     : GPL+
Signature   : RSA/SHA256, Thu 20 Jul 2023 07:21:37 AM +08, Key ID 75cf5ac418b8e74c
Source RPM  : fuse-2.9.9-17.fc39.src.rpm
Build Date  : Thu 20 Jul 2023 04:34:41 AM +08
Build Host  : buildhw-x86-01.iad2.fedoraproject.org
Packager    : Fedora Project
Vendor      : Fedora Project
URL         : http://fuse.sf.net
Bug URL     : https://bugz.fedoraproject.org/fuse
Summary     : File System in Userspace (FUSE) v2 utilities
Description :
With FUSE it is possible to implement a fully functional filesystem in a
userspace program. This package contains the FUSE v2 userspace tools to
mount a FUSE filesystem.

Kernel information (uname -r)

6.6.13-200.fc39.x86_64

GNU/Linux Distribution, if applicable (cat /etc/os-release)

NAME="Fedora Linux"
VERSION="39 (Cloud Edition)"
ID=fedora
VERSION_ID=39
VERSION_CODENAME=""
PLATFORM_ID="platform:f39"
PRETTY_NAME="Fedora Linux 39 (Cloud Edition)"
ANSI_COLOR="0;38;2;60;110;180"
LOGO=fedora-logo-icon
CPE_NAME="cpe:/o:fedoraproject:fedora:39"
HOME_URL="https://fedoraproject.org/"
DOCUMENTATION_URL="https://docs.fedoraproject.org/en-US/fedora/f39/system-administrators-guide/"
SUPPORT_URL="https://ask.fedoraproject.org/"
BUG_REPORT_URL="https://bugzilla.redhat.com/"
REDHAT_BUGZILLA_PRODUCT="Fedora"
REDHAT_BUGZILLA_PRODUCT_VERSION=39
REDHAT_SUPPORT_PRODUCT="Fedora"
REDHAT_SUPPORT_PRODUCT_VERSION=39
SUPPORT_END=2024-11-12
VARIANT="Cloud Edition"
VARIANT_ID=cloud

How to run s3fs, if applicable

  • command line
s3fs -o passwd_file=${HOME}/.passwd-s3fs -o url=https://{{}}.r2.cloudflarestorage.com -o use_path_request_style -o endpoint=weur -o nomultipart {{}} {{}}

s3fs syslog messages (grep s3fs /var/log/syslog, journalctl | grep s3fs, or s3fs outputs)

...
2024-02-27T06:11:46.166Z [CURL DBG] *   Trying [2606:4700::6812:95a]:443...
...
2024-02-27T06:11:46.988Z [CURL DBG] < HTTP/1.1 401 Unauthorized
...

Details about issue

CURL Has an option force_ip_resolve can provides with v4 or v6.

I want commandline or configuration file support this for let CURL only resolve some IP addresses.

I can only access R2 with IPv4 because some Firewall or Dynamic IP Bind Rules.

Originally created by @jyxjjj on GitHub (Feb 27, 2024). Original GitHub issue: https://github.com/s3fs-fuse/s3fs-fuse/issues/2424 #### Version of s3fs being used (`s3fs --version`) ``` Amazon Simple Storage Service File System V1.93 (commit:unknown) with OpenSSL Copyright (C) 2010 Randy Rizun <rrizun@gmail.com> License GPL2: GNU GPL version 2 <https://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. ``` #### Version of fuse being used (`pkg-config --modversion fuse`, `rpm -qi fuse` or `dpkg -s fuse`) ``` Name : fuse Version : 2.9.9 Release : 17.fc39 Architecture: x86_64 Install Date: Mon 26 Feb 2024 06:01:56 PM +08 Group : Unspecified Size : 224031 License : GPL+ Signature : RSA/SHA256, Thu 20 Jul 2023 07:21:37 AM +08, Key ID 75cf5ac418b8e74c Source RPM : fuse-2.9.9-17.fc39.src.rpm Build Date : Thu 20 Jul 2023 04:34:41 AM +08 Build Host : buildhw-x86-01.iad2.fedoraproject.org Packager : Fedora Project Vendor : Fedora Project URL : http://fuse.sf.net Bug URL : https://bugz.fedoraproject.org/fuse Summary : File System in Userspace (FUSE) v2 utilities Description : With FUSE it is possible to implement a fully functional filesystem in a userspace program. This package contains the FUSE v2 userspace tools to mount a FUSE filesystem. ``` #### Kernel information (`uname -r`) `6.6.13-200.fc39.x86_64` #### GNU/Linux Distribution, if applicable (`cat /etc/os-release`) ``` NAME="Fedora Linux" VERSION="39 (Cloud Edition)" ID=fedora VERSION_ID=39 VERSION_CODENAME="" PLATFORM_ID="platform:f39" PRETTY_NAME="Fedora Linux 39 (Cloud Edition)" ANSI_COLOR="0;38;2;60;110;180" LOGO=fedora-logo-icon CPE_NAME="cpe:/o:fedoraproject:fedora:39" HOME_URL="https://fedoraproject.org/" DOCUMENTATION_URL="https://docs.fedoraproject.org/en-US/fedora/f39/system-administrators-guide/" SUPPORT_URL="https://ask.fedoraproject.org/" BUG_REPORT_URL="https://bugzilla.redhat.com/" REDHAT_BUGZILLA_PRODUCT="Fedora" REDHAT_BUGZILLA_PRODUCT_VERSION=39 REDHAT_SUPPORT_PRODUCT="Fedora" REDHAT_SUPPORT_PRODUCT_VERSION=39 SUPPORT_END=2024-11-12 VARIANT="Cloud Edition" VARIANT_ID=cloud ``` #### How to run s3fs, if applicable - [x] command line ``` s3fs -o passwd_file=${HOME}/.passwd-s3fs -o url=https://{{}}.r2.cloudflarestorage.com -o use_path_request_style -o endpoint=weur -o nomultipart {{}} {{}} ``` #### s3fs syslog messages (`grep s3fs /var/log/syslog`, `journalctl | grep s3fs`, or `s3fs outputs`) ``` ... 2024-02-27T06:11:46.166Z [CURL DBG] * Trying [2606:4700::6812:95a]:443... ... 2024-02-27T06:11:46.988Z [CURL DBG] < HTTP/1.1 401 Unauthorized ... ``` ### Details about issue CURL Has an option `force_ip_resolve` can provides with `v4` or `v6`. I want commandline or configuration file support this for let CURL only resolve some IP addresses. I can only access R2 with IPv4 because some Firewall or Dynamic IP Bind Rules.
kerem 2026-03-04 01:52:07 +03:00
Author
Owner

@ggtakec commented on GitHub (Mar 6, 2024):

@jyxjjj Thanks for your request, and I will look into implementing it.

<!-- gh-comment-id:1981246654 --> @ggtakec commented on GitHub (Mar 6, 2024): @jyxjjj Thanks for your request, and I will look into implementing it.
Author
Owner

@ggtakec commented on GitHub (Mar 10, 2024):

@jyxjjj I created PR #2432.
That code can add the ipresolve option and solve the request of this issue.
If you can, please try to use that code.

<!-- gh-comment-id:1987092963 --> @ggtakec commented on GitHub (Mar 10, 2024): @jyxjjj I created PR #2432. That code can add the `ipresolve` option and solve the request of this issue. If you can, please try to use that code.
Author
Owner

@ggtakec commented on GitHub (Mar 17, 2024):

@jyxjjj #2432 was merged, please try to use it, if yo can.

<!-- gh-comment-id:2002383126 --> @ggtakec commented on GitHub (Mar 17, 2024): @jyxjjj #2432 was merged, please try to use it, if yo can.
Author
Owner

@jyxjjj commented on GitHub (Mar 17, 2024):

Oh thank you, i still need my upstream for an update. I do not have the permission to using softwares that not in upstream. Sorry I didn't notice your mention.

<!-- gh-comment-id:2002384264 --> @jyxjjj commented on GitHub (Mar 17, 2024): Oh thank you, i still need my upstream for an update. I do not have the permission to using softwares that not in upstream. Sorry I didn't notice your mention.
Author
Owner

@jyxjjj commented on GitHub (Dec 27, 2024):

My upstream finally upgraded it and now I can finally use it.

No issues found so far:

#!/bin/bash
s3fs \
-o url="https://{}.eu.r2.cloudflarestorage.com" \
-o endpoint=weur \
-o ipresolve=ipv4 \
-o passwd_file=.s3fs \
-o nomixupload \
-o multipart_threshold=20 \
-o multipart_size=20 \
-o allow_other \
{} {}

Thank you.

<!-- gh-comment-id:2563387756 --> @jyxjjj commented on GitHub (Dec 27, 2024): My upstream finally upgraded it and now I can finally use it. No issues found so far: ``` #!/bin/bash s3fs \ -o url="https://{}.eu.r2.cloudflarestorage.com" \ -o endpoint=weur \ -o ipresolve=ipv4 \ -o passwd_file=.s3fs \ -o nomixupload \ -o multipart_threshold=20 \ -o multipart_size=20 \ -o allow_other \ {} {} ``` Thank you.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/s3fs-fuse#1197
No description provided.