
icanhazip.com
This is the one true answer.
Just an IP, nothing else. And easily curlable.
It's a good old service, but unfortunately it's so old that it doesn't support IPv6 connections
Is it malicious code hosted on the website? Or are they saying that visiting that site is an indicator of compromise because they've malware commonly visiting that site?
Looks like the domain registration expired, according to https://lookup.icann.org/en/lookup
Fortinet marked the website as "malicious", but it doesn't seem to give an explanation as to why it's been given that classification (looked up here: https://www.fortiguard.com/webfilter)
Kasperky wanted an account (and possibly a subscription) to look up the website and I'm not going to give them any of my information so I'm not sure if they gave an explanation as to why the website is flagged.
Visiting https://thisismyip.com/ as of now just redirects to a Namecheap landing page so I doubt there's any actual malware on the website. I think Fortinet and Kaspersky preemptively marked it for when a malicious actor picks up the name and starts hosting actual viruses.
We have a little one, in case it's useful. https://ip.brightfur.net/ Super simple. Works with curl too (autodetects whether to give you plain text or an HTML webpage).
It's like 20 lines of PHP and most of that's HTML.
-- Frost
i usually use icanhazip.com, seems to work well enough
ip.me also works well in the terminal with curl. The default response is plaintext
I always use check.torproject.org. If I'm not on Tor, it gives me my IP, if I am on Tor it verifies that. Good for both.
#!/usr/bin/sh
dig -4 +short @resolver2.opendns.com myip.opendns.com
#!/usr/bin/pwsh
Resolve-DnsName -Server resolver2.opendns.com -Name myip.opendns.com -Type A | % { echo $_.IPAddress }
There should be an IPv6 resolver, but I don't remember and am currently unable to test. My PowerShell skills are also effectively non-existent.
A simpler and easy to memorize alternative:
curl ifconfig.me
That still relies on an external website, whereas dig uses just DNS
I saw it used in another comment, and am already aware of the use of curl for such a task, but choose to query DNS services instead—especially in scripts.
but choose to query DNS services instead—especially in scripts.
Why? What advantages do you get?
In order to connect to a site like wtfismyip.com you have to do a dns query for the IP address of the server, then query the http port on that IP address, but what if instead, that first dns query gave the answer to your question?
I worry less about the service breaking, changing, or otherwise disappearing, over a random website.
EDIT: Also what was said in a sibling comment.
There is also ifconfig.me which works amazingly on the command like with curl ifconfig.me
At that point just run ifconfig
That's not how this works. That's not how any of this works.
exept it does? At least in ipv6 land
i could see a situation where a host that only speaks IPv4 would need to add my IP to an allow list, and therefore I would need to check what IPv4 address I appear as, even though I am running IPv6.
I wrote my own. It's one of the easiest possible services to write.

curl ifconfig.me
Not sure about Linux, but on a Mac you can put it on your clipboard with
curl ifconfig.me | pbcopy
xh ifconfig.me | wl-copy
👍
Oookay, I guess it detects the user agent and only sends the IP number when it detects curl. Using xh did not work as intended.
Huh. Is it going by user-agent or something? Weird.
Our own tiny one goes by the Accept header. If xh sets that to text/html you'll get an HTML webpage though.
Some sites go by that, some go by user agent. I believe xh can fake it's user agent, if I'm not mistaken.
A good compromise would be to go by known user agents, but also heed the accept header. 👍
You Should Know
YSK - for all the things that can make your life easier!
The rules for posting and commenting, besides the rules defined here for lemmy.world, are as follows:
Rules (interactive)
Rule 1- All posts must begin with YSK.
All posts must begin with YSK. If you're a Mastodon user, then include YSK after @youshouldknow. This is a community to share tips and tricks that will help you improve your life.
Rule 2- Your post body text must include the reason "Why" YSK:
**In your post's text body, you must include the reason "Why" YSK: It’s helpful for readability, and informs readers about the importance of the content. **
Rule 3- Do not seek mental, medical and professional help here.
Do not seek mental, medical and professional help here. Breaking this rule will not get you or your post removed, but it will put you at risk, and possibly in danger.
Rule 4- No self promotion or upvote-farming of any kind.
That's it.
Rule 5- No baiting or sealioning or promoting an agenda.
Posts and comments which, instead of being of an innocuous nature, are specifically intended (based on reports and in the opinion of our crack moderation team) to bait users into ideological wars on charged political topics will be removed and the authors warned - or banned - depending on severity.
Rule 6- Regarding non-YSK posts.
Provided it is about the community itself, you may post non-YSK posts using the [META] tag on your post title.
Rule 7- You can't harass or disturb other members.
If you harass or discriminate against any individual member, you will be removed.
If you are a member, sympathizer or a resemblant of a movement that is known to largely hate, mock, discriminate against, and/or want to take lives of a group of people and you were provably vocal about your hate, then you will be banned on sight.
For further explanation, clarification and feedback about this rule, you may follow this link.
Rule 8- All comments should try to stay relevant to their parent content.
Rule 9- Reposts from other platforms are not allowed.
Let everyone have their own content.
Rule 10- The majority of bots aren't allowed to participate here.
Unless included in our Whitelist for Bots, your bot will not be allowed to participate in this community. To have your bot whitelisted, please contact the moderators for a short review.
Rule 11- Posts must actually be true: Disiniformation, trolling, and being misleading will not be tolerated. Repeated or egregious attempts will earn you a ban. This also applies to filing reports: If you continually file false reports YOU WILL BE BANNED! We can see who reports what, and shenanigans will not be tolerated. We are not here to ban people who said something you don't like.
If you file a report, include what specific rule is being violated and how.
Partnered Communities:
You can view our partnered communities list by following this link. To partner with our community and be included, you are free to message the moderators or comment on a pinned post.
Community Moderation
For inquiry on becoming a moderator of this community, you may comment on the pinned post of the time, or simply shoot a message to the current moderators.
Credits
Our icon(masterpiece) was made by @clen15!