Articles of ipv6

两个本地IPv6networking之间的IPv6 IPsec

假设我有两个networking,A和B,位于全球任一地点。 两者都具有本地IPv6,并正在使用(假设)只是IPv6。 IPv4不再存在。 他们既可以作为IPv6本地访问互联网,也可以使用IPv6主机。 他们的IPv6地址全部可路由。 因此,尽pipe有防火墙规则,networkingA中的每个主机都可以到达networkingB中的每个主机,反之亦然。 如何设置IPSec来保护这两个networking之间的通信? 在IPv4世界中,我将在每个站点的两个防火墙之间build立IPSec隧道,或者使用GRE隧道或类似方法。 但是,我将如何在全IPv6世界中做到这一点? IPv6中是否有内在的东西让这更容易? 理想情况下,我想在每个站点的防火墙/路由器上进行configuration。 我不想在每个networking中的每台主机上设置传输模式IPSec。 FWIW,我使用OpenBSD来处理路由/防火墙/ ipsec的需要,所以有关这方面的任何细节都会有所帮助,但是IPv6 / IPSec如何处理这种情况也是一个很好的答案。

为docker中断启用IPv6将主持IPv6连接,导致既不具有IPv6连接

前言:我在Docker和networking方面都是新手,尤其是IPv6。 是软件开发人员,而不是系统/networkingpipe理员。 我正在Linode上运行Arch,并且希望设置支持IPv6的Docker。 我可以用IPv4做,虽然我没有解决这个问题,但我仍然在使用IPv4,但是我非常期待启用IPv6。 因为我使用的是systemd-networkd IPForward=kernel ,所以我必须启用IPForward=kernel 。 如果Docker没有运行,那么IPv6显然适用于我的Arch。 如果我运行没有IPv6的Docker,Arch有IPv6连接。 现在,如果我运行启用了IPv6的Docker: docker daemon –ipv6 –fixed-cidr-v6="XXXXX/64" -H fd:// ,它打破了我的Arch的IPv6连接, 。 我发现的一个区别是没有Docker的IPv6,我在Arch上有一个默认的IPv6路由: [root@x ~]# ip -6 route show 2a01:7e00::/64 dev enp0s4 proto kernel metric 256 pref medium fe80::/64 dev enp0s4 proto kernel metric 256 pref medium fe80::/64 dev docker0 proto kernel metric 256 pref medium default via […]

Radvd将广告发送到错误的界面

我有以下radvd.conf文件: interface eth0 { AdvSendAdvert on; MinRtrAdvInterval 30; MaxRtrAdvInterval 100; route 2000:e000:0:2::/64 { AdvRoutePreference low; }; }; interface tap_tap { AdvSendAdvert on; MinRtrAdvInterval 30; MaxRtrAdvInterval 100; prefix 2000:e000:0:2::/64 { AdvOnLink on; AdvAutonomous on; AdvRouterAddr on; }; route 2000:e000:0:1::/64 { AdvRouteLifetime infinity; AdvRoutePreference high; }; }; 这个想法是有一个eth0接口面向内部networking和一个龙头接口,将有人从VPN连接。 在eth0接口上,我想通告路由,这样内部networking的每个人都可以看到VPN客户端,问题是eth0通告被其他接口(如eth1)拾取,并且弄乱了整个路由: # radvd configuration generated by radvdump 1.9.2 # […]

通过OpenVPN-server从客户端路由IPv6stream量

为了玩和学习的目的,我build立了一个OpenVPN服务器。 我目前连接到一个没有IPv6的networking。 因此,我想通过VPN路由所有IPv6stream量。 用IPv4和iptables-masquerading这已经很好了。 现在到IPv6:我在networking内部build立了IPv6。 我能够在客户端和服务器之间build立连接和ping(ping6)。 服务器内核的转发被激活。 服务器具有到外部的IPv6连接。 我试过这个设置: push "route-ipv6 2000::/3" 和 push "route-ipv6 <my IPv6>" 如果我想在“外部”上ping一些地址: ping6 ipv6.google.com connect: Network is unreachable 即使如果我用“-I tun2”设置正确的接口。 (只是为了确保它不尝试使用其他的接口) 现在我的configuration和设置: 客户的IP: inet6 addr: fdee:dead:b0b::1000/64 服务器的IP: inet6 addr: fdee:dead:b0b::1/64 服务器configuration: port 443 proto udp proto udp6 dev tun tun-ipv6 ca ca.crt cert server.crt key server.key dh dh4096.pem auth […]

在服务器和家庭networking之间build立IPv6 over IPv4隧道

一方面,我有一个在具有IPv6连接的数据中心的Ubuntu服务器。 eth0接口具有公共IPv4和公共IPv6 / 48。 从该服务器我可以ping通IPv6地址确定。 另一方面,我在一个IPv4的ISP上有一个家庭networking。 路由器是Mikrotik,从ISP接收dynamicIPv4。 然后路由器作为具有私有地址的IPv4 LAN的DHCP服务器。 我想在服务器和家庭networking之间build立一个隧道。 我希望局域网中的节点能够从属于该服务器的范围获得IPv6连接。 如果一个节点可以作为隧道的本地terminal,也可以作为一个路由器(最好是Mikrotik路由器,但如果更容易的话,我也可以在本地networking上专门使用一个Ubuntu来完成这个任务),而其余的节点自动获取其configuration。 但是,我也准备好考虑每个本地节点与服务器build立自己的隧道,如果这更有意义的话。 约束: 我已经阅读了很多不同的隧道IPv6方法,但没有一个能够描述这种确切的情况。 我不想使用Teredo,既不是隧道经纪人。 我希望服务器只接受本地networking上没有固定IPv4的节点的连接,所以可能会发生某种authentication。 也许通过OpenVPN或类似的。 我可以像Linux一样在一定程度上configuration一些节点,但局域网上还有像iPad这样的其他节点,不太容易调整,如果可能的话,应该自动接收它们的configuration。 但是,如果只有linux节点连接,那也是可以的。 什么将是一个明智的方式来build立它和相应的configuration?

启用IPv6后,nginx虚拟主机不工作

我刚刚在基于Debian Jessie的nginx 1.8.0 webserver上启用了IPv6。 要做到这一点,我编辑了我的虚拟主机configuration: server { listen 80; listen [2001:1608:10:160:34::2]:80; server_name dominicpratt.de www.dominicpratt.de; return 301 https://dominicpratt.de$request_uri; } server { listen 443; listen [2001:1608:10:160:34::2]:443; server_name dominicpratt.de www.dominicpratt.de; root /var/www/dominicpratt.de; index index.html index.htm index.php; access_log /var/log/nginx/dominicpratt.de_access.log; ssl on; ssl_certificate /etc/nginx/ssl/dominicpratt.de/combined.pem; ssl_certificate_key /etc/nginx/ssl/dominicpratt.de/wildcard.key; location / { try_files $uri $uri/ /index.php?q=$request_uri; } location ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; […]

双栈linux路由器,不能转发IPv6前缀

我有一个小办公室,有几个工作站,我想实现一个像代理服务器,桑巴等东西的小型服务器。这是所述networking的拓扑结构: +—–+ dynamic +——–+ +——————-+ +–+workstation1 | | /56 prefix | | | Debian server | +——–+ | ISP +————–+ Router +-+eth0+-+ +-+eth1+-+ switch +–+workstation2 | | dynamic | | | (squid,dhcp,etc.) | +——–+ +—–+ IPv4 address +——–+ +——————-+ +–+workstationX 我希望服务器通过交换机将全局(也可能是本地)IPv6地址和私有IPv4地址分配给连接到eth1的所有设备。 我已经能够获得NAT伪装与dnsmasq和iptables工作,但我无法获得IPv6stream量,甚至分配IPv6地址工作。 路由器在IPv6 DHCP服务器选项卡中有三个不同的设置: 只分配DNS服务器 分配DNS服务器和IPv6前缀到下游路由器( 我认为应该启用 ) 分配DNS服务器,下游路由器的IPv6前缀和IPv6地址 我试着按照这个指南。 它介绍了如何使用dnsmasq设置DHCPv6服务器。 我有一个工作eth0获得一个全球性的,独特的本地和链接本地地址。 但是我的eth1接口永远不会得到一个全球IPv6地址,只有一个本地连接。 服务器后面的设备都有一个工作的IPv4地址,但我不能将IP设置为静态IP,因为前缀是dynamic的,并且每晚都会更改。 目前我被困在这一点上。 […]

你可以在Microsoft DNS服务器上启用IPv6任播吗?

我有一个分配给Windows 2012R2服务器的任播地址,我可以从跨子网ping它。 DNS服务不会将其视为可以侦听的地址,nslookup(从服务器本身)将返回“没有来自服务器的响应”。 我试过dnscmd /ResetListenAddresses但它不会接受任播地址。 Microsoft DNS是否支持任播地址?

L和A位设为0的路由器广播前缀的意义是什么?

RFC 4861第4.6.2节描述了路由器通告数据包的前缀选项。 有两个标志是选项L和A一部分,它们分别表示前缀可用于链接和SLAAC 。 这两个位被设置为零的实际含义是什么? 我考虑过的可能性: 在多路由器configuration中,这样的选项将指示经由比特定路由器更短的路由经由该特定路由器可到达的前缀 如果路由器通告单播给作为下游路由器的主机,则它可以作为前缀委托的简单实现

为服务器分配前缀灵活的静态IPv6地址

有时需要为服务器分配一个静态的IPv6地址。 手动configuration静态全球单播IPv6地址是实现此目的的一种方法,但是必须在地址前缀需要更改时进行手动更新。 有一个适当的/最好的方式来分配一个静态的IPv6地址到Windows服务器,保留使用路由器公告来重新configuration地址的前缀的能力,或者我正在尝试做的不是IPv6的做事方式吗? 一种实现这一点的方法是为设备/服务器分配静态链接本地地址。 但是,在我的研究中,我通常没有听到这个想法,让我怀疑这是不是一个推荐的方法。