これを修正する方法はありますか?インターフェイスの順序を変更できますか? $ :: ipaddressを使用するパペットモジュールがたくさんあり、Dockerを使用するCentOS 6では正常に動作しますが、7では動作しません
interfaces => docker0,eno16780032,lo
ipaddress => 172.17.42.1
ipaddress_docker0 => 172.17.42.1
ipaddress_eno16780032 => 10.251.17.170
ipaddress_lo => 127.0.0.1
これはデフォルトのIPアドレスファクトの問題であり、少し馬鹿げています。デフォルトルートに基づくdefault_ifと呼ばれるカスタムルートを使用します(Debianで動作し、CentOSへの適応が必要な場合があります)。
Facter.add("default_if") do
confine :kernel => :linux
setcode do
return nil unless FileTest.exists?("/sbin/ip")
output = %x{/sbin/ip route list match 0.0.0.0}.split("\n")[0]
output.sub(/.*\s*dev\s+([^\s]+)\s*.*/, '\1')
end
end