For the best experience on desktop, install the Chrome extension to track your reading on news.ycombinator.com
Hacker Newsnew | past | comments | ask | show | jobs | submit | history | simbakhadder's commentsregister

Also looks like machine learning which is why we chose it. Couldn't imagine it ever becoming an issue like today.


Why would these spam marketing companies want to buy IPv4 addresses? Would IPv6 not work? Or were they trying to assume the identity and reputation of the companies that owned the IPv4 addresses previously?

Edit: Sendgrid answered my question in this post quite well https://sendgrid.com/blog/where-is-ipv6-in-email/


Everybody on the internet has access to IPv4, the same is not true of IPv6 as of the end of 2019. IPv6 addresses are also pretty easy to get without doing shady deals.


For spam purposes, IPv6 is just as rare as IPv4... you can generally assume that anyone in a /64 is the same owner.

... so really if you have 1000 IPv4 or 1000 /64 IPv6 it's about the same number of IPs that you can use to spam from.


> IPv6 is just as rare as IPv4

Well, it’s not? There are 2^64 /64 IPv6s compared to 2^32 IPv4s in total. Unless you meant to say a /64 is as expensive as an IPv4.


I think they mean rare in terms of usage? As in you are as unlikely to encounter an ipv6 address as compared to the amount of v6 addresses.


I'm not sure how tolerated this is on HN, but I'm lazy to research background on this. Could you please explain what a /64 is and why it is significant in this regard?


A netblock. A "/n" means "a block of IP addresses where the first n bits are the same".

This comes from the CIDR notation 192.168.1.0/24 indicating the netblock from 192.168.1.0 - 192.168.1.255.

So the number after the slash corresponds to a network size. The smaller the number, the more bits are variable, i.e. the bigger the netblock.

An IPv4 /24 has 32 (address length) - 24 = 8 bits that are variable, i.e. 2^8 addresses. A /18 would have 32-18 = 14 variable bits, i.e. 2^14 addresses.

In IPv6, the address length is 128. A /64 (which happens to be the smallest routable network size in IPv6) is 2^64 addresses - but because it's easy to get large IPv6 netblocks (typical ISP allocations are /64, /56, and you can often get a /48 with relative ease), for abuse blocking purposes, you generally treat the entire /64 or even /56 as one entity (i.e. you ignore the rightmost 64 or 72 bits).

A /56 is 2^8 separate /64s. A /48 is 2^16 separate /64s.


That was very informative for me, thanks!


From Wikipedia: "The standard size of a subnet in IPv6 is 2^64 addresses, more than 4 billion times the size of the entire IPv4 address space."

What he's saying is that one /64 address allocation is as useful to a spammer as a single IPv4 address.


Want to also add it's called CIDR notation - or that's what I've learned - and that term has loads of good results


Since none of us know exactly how much you already know about IP routing, we’ll likely either waste time providing an answer that assumes knowledge you don’t yet have, or waste time providing extraneous detail you don’t need.

I suggest googling something along the lines of “ipv6 allocation 56 64“ sans quotes.

[Edit: never mind; the HN community seems quite generous with their time today.]


The problem is that thinking for someone else doesn't "teach them to fish (learn independently)" and "be the change you seek," rather it enables co-dependency on others.


Conversely, searching for the meaning of a forward slash is not the simplest thing in the world.


Ironic name of the company, comes off as a Onion article, sad that it's true


Onion articles seem to write themselves these days


Seems useful as a tool for integration tests. Makes it a bit cleaner to update the state of a database and test against the application level code


This is smart, would love if it got smart enough to analyze .dockerignore files, and (if you're analyzing our code with the rest of your tool anyway) you could find large files/directories that we COPY/ADD and don't need


What I do, is I start all my .dockerignores with "*" (i.e. ignore everything) and then selectively un-ignore the files and directories I need to copy.


Is the expected use case to build generic queries on any type of database?

Also why Javascript?


Hard to read with light blue text on dark blue background


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search:

HN For You