トップ «前の日記(2017-10-25) 最新 次の日記(2017-10-31)» 編集

Orz日記 by Akio Morita

ToDo:

  • 15 SAD Fit[]回りの障害事例の解析
  • 10 smart pointer版PEGクラスの再実装(Left Recursionまわり)
2006|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|06|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|07|08|09|10|11|12|
2013|01|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|06|07|08|10|12|
2016|01|02|03|05|06|08|10|11|
2017|01|02|03|04|05|06|07|09|10|11|12|
2018|01|02|03|04|06|07|08|09|10|11|12|
2019|01|03|04|05|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|09|10|11|12|
2024|01|02|03|04|05|06|07|08|09|

2017-10-25 [長年日記]

_ [FreeBSD]CUPS lpqの件

昨日の件であるが、logを眺めた範囲では r324686が怪しい気がする

r324686 | tuexen | 2017-10-17 21:41:50 +0900 (10/17/17 (Tue)) | 11 lines

MFC r322648:

Ensure inp_vflag is consistently set for TCP endpoints.

Make sure that the flags INP_IPV4 and INP_IPV6 are consistently set
for inpcbs used for TCP sockets, no matter if the setting is derived
from the net.inet6.ip6.v6only sysctl or the IPV6_V6ONLY socket option.
For UDP this was already done right.

PR:             221385

当該環境は、ipv6_ipv4mapping="YES"で、net.inet6.ip6.v6only=0な運用になっている

検証&パッチ

r324686をバックアウトして検証したところlpq -h localhostは正常に動くので、当該commitが原因として特定された

運用では、r324686の変更をnet.inet6.ip6.v6only=1の条件でのみ働く様にするパッチを適用した

Index: sys/netinet/tcp_usrreq.c
===================================================================
--- sys/netinet/tcp_usrreq.c    (revision 325004)
+++ sys/netinet/tcp_usrreq.c    (working copy)
@@ -1899,7 +1899,7 @@
 #ifdef INET6
        if (inp->inp_vflag & INP_IPV6PROTO) {
                inp->inp_vflag |= INP_IPV6;
-               if ((inp->inp_flags & IN6P_IPV6_V6ONLY) == 0)
+               if (V_ip6_v6only && (inp->inp_flags & IN6P_IPV6_V6ONLY) == 0)
                        inp->inp_vflag |= INP_IPV4;
                inp->in6p_hops = -1;    /* use kernel default */
        }

これを機に、net.inet6.ip6.v6only=1な運用に移るのも一考?


カテゴリー: Admin | Emacs | EPICS | Fortran | FreeBSD | GCC | hgsubversion | IPv6 | KEKB | LHC | Lisp | LLVM | MADX | Ryzen | SAD | samba | tDiary | unix | WWW | YaSAI | お仕事 | イベント | 出張 | 宴会 | 数学 | 艦これ | 買いもの | 追記 | 雑記