any comments on how to balance a few IPv6 uplinks? or just failover for the home Internet?I'm personally against anything to do with nat and IPv6. We don't need another bandaid like nat originally was. Use IPv6 the way it was intended to be used.
any comments on how to balance a few IPv6 uplinks? or just failover for the home Internet?I'm personally against anything to do with nat and IPv6. We don't need another bandaid like nat originally was. Use IPv6 the way it was intended to be used.
it's not a business. if I'll say to a friend of mine, "in IPv4 time you was able to do quick failover to 3G modem when your ADSL line fails, and now, with IPv6, you don't need it - IPv6 ADSL is rock stable" - won't it be a bit funny?Don't do it. Do it the right way. Not the hack way.
I'm not sure what the real costs are but a few thousand euros per month sounds pretty steep for announcing a prefix. It'd be a couple hundred dollars a month in the states. Cost of doing business. Do it right or don't do it.
You don't even need PI space - just generate a unique local prefix fc00::/7 prefix. Current practice is to use fd00::/8 with a sufficiently randomly generated 40 bits to follow, giving you a random 'unique' /48 prefix.My proposal is pretty simple:
- Get some PI space from a RIPE member who will register it for you cheaply
- use that PI space internally for your network to be independent
- and NPTv6 to translate it to the space allocated by the ISP (or the spaces, if we are talking DSL+ UMTS backup).
It's already there, and just as horrible as one would think – unless they got rid of it in the recent years:Given the fact that IPv6 allows header stacking, maybe a new header similar to the dreaded source routing will come into use
That could work in theory. In practice it will probably just 99% fc00::/48 and 1% fc00::dead:beef:/48 – just like 192.168.0.0/16 did allow for 256 /24s but everyone only ever used 192.168.{0,1,2,178}.0/24.You don't even need PI space - just generate a unique local prefix fc00::/7 prefix.
That might be true for "full-featured OSes" but as soon as you start looking at anything beyond that you are again very limited in configuration.IPv6 allows much more seamless use of multiple addresses than V4 hosts did.
User: Hey, I can't access that file share.
IT: (after 3h of debugging) Well, obviously your PC decided to pick the ISP-assigned source address but our firewall only allows our ULA prefix.
...
MPTCP is far away in the future.If you have 2 providers, put both prefixes on your hosts at the same time, and then they can all use MPTCP to bond the internet connections.
I've tested it with some DSL links a few weeks ago and it showed the same ~30% loss (compared to the mathematical sum of all links) that other bonding solutions like Viprinet did.whereas MPTP could go at the full speed of all links combined. Seamlessly.
I pay 50 usd/month for gigabit fiber. It's stable.it's not a business. if I'll say to a friend of mine, "in IPv4 time you was able to do quick failover to 3G modem when your ADSL line fails, and now, with IPv6, you don't need it - IPv6 ADSL is rock stable" - won't it be a bit funny?Don't do it. Do it the right way. Not the hack way.
I'm not sure what the real costs are but a few thousand euros per month sounds pretty steep for announcing a prefix. It'd be a couple hundred dollars a month in the states. Cost of doing business. Do it right or don't do it.
the same for multihoming: "don't balance two cheap ADSL lines, pay $5k to your ISP for fiber!"
There is no "end to end rule".It's breaking the end to end connectivity rule.
Also, come to think of it, NAT has actually helped in IPv4: Because of the feared NAT issues many VPN solutions are now based on SSL instead of IPSec. And SSL turns out to be the better protocol in about every aspect.o End-to-end reachability is preserved, although the address used
"inside" the edge network differs from the address used "outside"
the edge network. This has implications for application referrals
and other uses of Internet layer addresses.
It might be. The numbers with IPv6 are difficult to understand for humans.The point of wasteful assignments is really not founded. The address space really is that vast that it doesn't matter.
/56 for home users might be wasteful, but better than very disturbing trend I see more and more often, where they get just one dynamic /64 and that's it. That's not how I imagined enough addresses for everyone that IPv6 was supposed to bring. Sure, you can hide whole IPv4 internet in that many many times, but you can't even make stupid guest LAN, because everything expects /64 minimum.Current allocation practices are - well the word 'wasteful' is just inadequate to describe it. /56 to home users???
But it DOES - as soon as a protocol sends an endpoint address in-band which is not ACTUALLY reachable by that address, something just got broken. VoIP is the big case, and a SIP helper isn't enough to completely fix the issue. The "deceptively private" in-band address might be a 3rd endpoint not directly in-line between the two SIP speakers (say RTP is redirected to some other org's voicemail server, and it happens to have even a stateful nat in front of it - the actual address of the actual HW is not reachable - some NAT address is. (even 1:1 is NAT - port translation actually came later and strictly speaking, was referred to as NAPT for a while at first)IMHO NPTv6 does not violate the end-to-end principle, as (unlike NAT!) it is a strictly reversible operation.
I agree 100% on these points, but NPTv6 doesn't address b) at all. It only prevents you from needing to have dynamic addresses all over your network, which can be solved in other means mentioned earlier. There is zero difference logically between org-local addressing that's un-routeable by designation (fc00::/7) or org-local addressing that's un-routeable because nobody will advertise it into BGP for some reason or other. They're both unreachable islands.Don't get me wrong, I'm very much against the idea of NAT to "hide" multiple hosts behind a single IP as everyone else. But what I'm also against is
a) Having my ISP dictate how I layout my internal network
b) Being dependent on an ISP (their PA addresses)
OH yeah - there's hurdles to cross. For sure. I mean, when I started out, DHCP was a rare beast. I had to walk many office LANs to configure the new public IP range on every computer (and reboot - Windows3.11/Win95 didn't let you just change it) whenever we brought a new T1 or ISDN customer on board.A little more on topic, last time I tried to use local fd00::/8 addresses, it didn't go very well. Windows 7 got both local and public addresses just fine, but then insisted on using local one for pretty much everything. Can't connect to Google from fd<something>. It can be reconfigured and from the quick look it seems that it may be already done by default since at least Windows 8.1, but given the current OS share, local addresses are currently not exactly plug and play.
Yep, for the very simple fact that SSL/TLS is a proven protocol with widespread use and pretty good understanding of the basic workings in the security community.You lost my attention at "ssl vpns are better". Lol. Really?
Yes, please! Network Prefix Translation (NPT, RFC6296) would make the adoption of IPv6 for the full network so much easier.
At least those of us, whose IPS won't allow us the use of BGP...
However please read his next (#72) post in that thread for his caveat against it. viewtopic.php?p=934680#p934676Code: Select all/ipv6 firewall mangle add chain=postrouting action=snpt src-address=fd00:1234:5678:9a00::/56 src-prefix=fd00:1234:5678:9a00::/56 dst-prefix=publ:icpr:efix:b700::/56 add chain=prerouting action=dnpt dst-address=publ:icpr:efix:b700::/56 src-prefix=publ:icpr:efix:b700::/56 dst-prefix=fd00:1234:5678:9a00::/56
Code: Select all/ipv6 firewall nat add action=masquerade chain=srcnat dst-address=2000::/3 src-address=\ 200:c01d:c01a:beef::7ac0/128 to-address=2603:XXXX:XXXX:XXXX::2/128
Yes, please! Network Prefix Translation (NPT, RFC6296) would make the adoption of IPv6 for the full network so much easier.
At least those of us, whose IPS won't allow us the use of BGP...
@Sob in Feature Request: IPv6 NAT66 Support in post #71 wrote a pair of sample firewall rules for NPTv6:However please read his next (#72) post in that thread for his caveat against it. viewtopic.php?p=934680#p934676Code: Select all/ipv6 firewall mangle add chain=postrouting action=snpt src-address=fd00:1234:5678:9a00::/56 src-prefix=fd00:1234:5678:9a00::/56 dst-prefix=publ:icpr:efix:b700::/56 add chain=prerouting action=dnpt dst-address=publ:icpr:efix:b700::/56 src-prefix=publ:icpr:efix:b700::/56 dst-prefix=fd00:1234:5678:9a00::/56
Actually those are the results of RFC6296 section 2.6 Checksum-Neutral Mapping https://datatracker.ietf.org/doc/html/r ... ection-2.6
It is worth keeping in mind when planing to use NPTv6 with Unique Local Addresses (ULA) that:There is a useful summary of the pitfalls of using ULA at https://blogs.infoblox.com/ipv6-coe/ula ... k-networks however one should note that the author seems to be focusing on large enterprise( network)s which have the possibility to use Provider Independent (PI) IPv6 addresses.
- by default in line with RFC6724 Default Address Selection for Internet Protocol Version 6 (IPv6) section 2.1. Policy Table ULA address won't be used in case of a dual stack setup https://datatracker.ietf.org/doc/html/r ... ection-2.1
- ULA should be allocated from the fd00::/8 subnet in an RFC4193 Unique Local IPv6 Unicast Addresses section 3.2.2 conforming manner https://datatracker.ietf.org/doc/html/r ... tion-3.2.2
While we are at it @IPANetEngineer in IPv6 and NAT - how I changed my mind in post #45 provided sample firewall rule for IPv6 masquerade:Code: Select all/ipv6 firewall nat add action=masquerade chain=srcnat dst-address=2000::/3 src-address=\ 200:c01d:c01a:beef::7ac0/128 to-address=2603:XXXX:XXXX:XXXX::2/128
What solution do you propose for those that have a dynamic IPv6 address and want static addresses on their LAN, so they use some form of NAT between theirRelated to the ULA discussion - ULA is functionally useless in dual stacked networks, as highlighted in the infloblox blog post above. It will almost never be used, so your mileage may vary if there is an expectation of using v6 by default in the presence of any IPv4 at all. There is an IETF draft in process highlighting these issues available here https://datatracker.ietf.org/doc/draft- ... v6ops-ula/
Related to the ULA discussion - ULA is functionally useless in dual stacked networks, as highlighted in the infloblox blog post above. It will almost never be used, so your mileage may vary if there is an expectation of using v6 by default in the presence of any IPv4 at all. There is an IETF draft in process highlighting these issues available here https://datatracker.ietf.org/doc/draft- ... v6ops-ula/
label fd00::/8 1
precedence fd00::/8 41
netsh interface ipv6 add prefixpolicy fd00::/8 41 1
/ipv6 firewall filter
add action=drop chain=forward comment="defconf: drop invalid" connection-state=invalid
ping6 -c 5 google.com
/ipv6 firewall filter
add action=drop chain=input comment="defconf: drop all not coming from LAN" in-interface-list=!LAN
What solution do you propose for those that have a dynamic IPv6 address and want static addresses on their LAN, so they use some form of NAT between their
LAN and the public IPv6 prefix valid at that moment?
Just grab some random public IPv6 address that appears not to be in use, but is not considered ULA?
Ok then the IETF need to allocate a new local address range for use in such scenarios and not attach such silly strings to it...
(so that addresses on that range are not somehow considered "inferior to IPv4")
I would say that any range normally allocated to routed customers would do.
Maybe they can make it formally forbidden to issue dynamic IPv6 prefixes to fixed line consumers. That would remove a prominent reason for wanting to do address translation.There is significant pushback on address translation in the IPv6 standard bodies.
I am reading this thread and I am seeing impending doom (only to a few).Maybe they can make it formally forbidden to issue dynamic IPv6 prefixes to fixed line consumers. That would remove a prominent reason for wanting to do address translation.
`Maybe they can make it formally forbidden to issue dynamic IPv6 prefixes to fixed line consumers.There is significant pushback on address translation in the IPv6 standard bodies.
I just love that analogy, and exactly the same all Telecom were saying going against MNP. Oh - thousands lines of code, databases, who will be responsible, etc. My number started years ago with Sprint, then it went to T-Mobile, than to At&T, to now Verizon. As a consumer I don't care. It has to work!!!Strongly, strongly disagree. Having think tanks...err, "standards bodies" dictate how operators that are actually "in the trenches" so to speak should design and engineer their networks is NOT the right answer to the problem at hand.
It is exactly this kind of mentality that has gotten us to where we are in the first place. Why do you think that IPv6 has taken so long to gain momentum? Well, if you give network operators a bunch of "thou shalt nots" that, when all taken together, the only way for them to not run afoul of the rules is if they completely tear down their existing networks and rebuild from scratch, then what you have effectively done is put a HUGE barrier to entry in front of them, which ACTIVELY DISCOURAGES them from pursuing v6 roll-out. Whereas if they could simply start handing out v6 addresses to their existing customers OVER THEIR EXISTING NETWORK INFRASTRUCTURE without making a bunch of drastic, time-consuming, and expensive changes, maybe, just MAYBE, there would be a higher adoption rate & more rapid buy-in.
(...)
The same principle applies to IPv6: if I give every single customer their own static v6 prefix, now I have to carry all 10,000 of those separate prefixes in the tables of each router on my network. It's no different.
`I just love that analogy, and exactly the same all Telecom were saying going against MNP. Oh - thousands lines of code, databases, who will be responsible, etc. My number started years ago with Sprint, then it went to T-Mobile, than to At&T, to now Verizon. As a consumer I don't care. It has to work!!!
[...]
We are doing stuff the same way here. We are talking about big ideas, about perfect solutions but life is life. ULA will stay and making it as easy as possible to translate to GUA should be our goal, even it if will cost us some speed.
(goes on about how difficult it would be to have static addresses)`
Maybe they can make it formally forbidden to issue dynamic IPv6 prefixes to fixed line consumers.
Strongly, strongly disagree. Having think tanks...err, "standards bodies" dictate how operators that are actually "in the trenches" so to speak should design and engineer their networks is NOT the right answer to the problem at hand.
The resource costs of NPTv6 are manageable and RFC6296 IPv6-to-IPv6 Network Prefix Translation has been implemented in RouterOS quite a while ago as @Sob has pointed out at the end of last April (all it takes are two entries in ipv6/firewall/mangle). The real issue is the current state of RFC6724 section 2.1. Policy Table.... ULA will stay and making it as easy as possible to translate to GUA should be our goal, even it if will cost us some speed.
If there would be will to assign higher precedence by default to RFC4193 conforming fd00::/8 prefix (ULA) than ::/0 (or at least higher than IPv4) in a manner shown in the RFC6724 section 10.5. Configuring a Multi-Homed Site example (and said change would be implemented by three household name companies who's operating system are running on the overwhelming majority of client devices) than the case would be closed.Ok then the IETF need to allocate a new local address range for use in such scenarios and not attach such silly strings to it...
(so that addresses on that range are not somehow considered "inferior to IPv4")
On the other side of the pond just Nieuw Amsterdam (currently New York City) urban area has significantly higher population than the Netherlands. Since practically there is no single telecom market in the EU, ISPs face an order of magnitude smaller problems on the East side of the Atlantic.(goes on about how difficult it would be to have static addresses)
Strongly, strongly disagree. Having think tanks...err, "standards bodies" dictate how operators that are actually "in the trenches" so to speak should design and engineer their networks is NOT the right answer to the problem at hand.
Well, it has not prevented our local (Netherlands) fiber and DSL operators from doing it. They all use PPPoE and have several redundant PPPoE servers where customers
connect via the connection network, and everyone has a "static" IPv4 address and IPv6 /48 network. ...
Apparently they have been able to get the routing working correctly. These providers have hundreds-of-thousands to millions of customers.
While being so "advanced" those ISPs still use the CPU cycle intensive PPPoE instead of the CPU cycle frugal DHCP for accounting.These PPPoE servers (which of course are not MikroTik, but Juniper or Cisco etc) apparently can handle it.
Actually @NathanA has just given some very real reasons of the advantages that dynamic IP addresses may provide for an ISP. Whether the cost savings result in lower fees for their customers is a different story.There should be no real reason not to use static addresses on fixed lines, and it would solve a lot of the issues we see now.
The reason is that the connection networks and the internet services are handled by different companies here, that are forced to open their services to anyoneWhile being so "advanced" those ISPs still use the CPU cycle intensive PPPoE instead of the CPU cycle frugal DHCP for accounting.These PPPoE servers (which of course are not MikroTik, but Juniper or Cisco etc) apparently can handle it.
You can use QinQ or just dotQ with PON port isolation + filtering on the OLT itself to prevent intra-VLAN communication based on MAC filers.The reason is that the connection networks and the internet services are handled by different companies here, that are forced to open their services to anyone
who requests. So, there are companies that manage fiber, DSL and cable networks to connect customers, and there are (other) companies that provide internet
services to the customers connected to those networks.
To separate customers of different internet providers at the connection network, PPPoE is used.
Another reason is that that it is mandatory to provide capability to intercept each customer's line. So while it would be attractive to put decentralized routers which
serve local customers and assign addresses from a local pool, then route that all through the network, that would be difficult to deploy in a legal way, so instead
centralized PPPoE concentrators are used and all customer traffic is sent there.
This objection overlooks the case where SMBs or home users are self-hosting public web services. In these cases, the consumer of said services won't even be able to detect that the service is being hosted via a ULA address, given that that public DNS will route to a GUA and the NPTv6 translations all happen internally. In cases that involve load balancers which need static IP ranges to operate e.g. most Kubernetes ingress, NPT is a simpler and more reliable solution than passing through dynamic address ranges to each web service and expecting each one of them to reconfigure themselves each time the prefix changes. In fact, pfSense implemented these changes last year (https://redmine.pfsense.org/issues/4881) and they are extremely straightforward to configure and use. And since it happens at the router, the update happens near-instantly. At any rate, claiming that ULA is functionally useless in dual-stacked networks is just flat-out wrong. Rather, the author seems to be missing some of the potential use cases.Related to the ULA discussion - ULA is functionally useless in dual stacked networks, as highlighted in the infloblox blog post above. It will almost never be used, so your mileage may vary if there is an expectation of using v6 by default in the presence of any IPv4 at all. There is an IETF draft in process highlighting these issues available here https://datatracker.ietf.org/doc/draft- ... v6ops-ula/
nb
@Sob in Feature Request: IPv6 NAT66 Support in post #71 wrote a pair of sample firewall rules for NPTv6:
However please read his next (#72) post in that thread for his caveat against it. viewtopic.php?p=934680#p934676
Actually those are the results of RFC6296 section 2.6 Checksum-Neutral Mapping https://datatracker.ietf.org/doc/html/r ... ection-2.6
It is worth keeping in mind when planing to use NPTv6 with Unique Local Addresses (ULA) that:There is a useful summary of the pitfalls of using ULA at https://blogs.infoblox.com/ipv6-coe/ula ... k-networks however one should note that the author seems to be focusing on large enterprise( network)s which have the possibility to use Provider Independent (PI) IPv6 addresses.
- by default in line with RFC6724 Default Address Selection for Internet Protocol Version 6 (IPv6) section 2.1. Policy Table ULA address won't be used in case of a dual stack setup https://datatracker.ietf.org/doc/html/r ... ection-2.1
- ULA should be allocated from the fd00::/8 subnet in an RFC4193 Unique Local IPv6 Unicast Addresses section 3.2.2 conforming manner https://datatracker.ietf.org/doc/html/r ... tion-3.2.2
While we are at it @IPANetEngineer in IPv6 and NAT - how I changed my mind in post #45 provided sample firewall rule for IPv6 masquerade:
But that is often not even allowed by those ISPs that change the addresses, or at least the ISP does not want to spend any effort to enable that.This objection overlooks the case where SMBs or home users are self-hosting public web services.