質問編集履歴
3
更新
test
CHANGED
File without changes
|
test
CHANGED
@@ -63,3 +63,79 @@
|
|
63
63
|
しかし、puppetはinstallしていません。
|
64
64
|
|
65
65
|
/if-pre-up.d以下で、iptablesをいじるのは`iptables_start`のみなのですが、それでも何かとぶつかっているのでしょうか。
|
66
|
+
|
67
|
+
|
68
|
+
|
69
|
+
### さらに追記 同日
|
70
|
+
|
71
|
+
[こちら](https://serverfault.com/questions/914493/ubuntu-18-04-doesnt-load-iptables-rules-after-reboot)では、systemdにやらせると良いということで、次のようにserviceを作りました。
|
72
|
+
|
73
|
+
|
74
|
+
|
75
|
+
```
|
76
|
+
|
77
|
+
root@instance1:~# cat /etc/network/iptables
|
78
|
+
|
79
|
+
#!/bin/bash
|
80
|
+
|
81
|
+
/sbin/iptables-restore < /etc/iptables.rules
|
82
|
+
|
83
|
+
exit 0
|
84
|
+
|
85
|
+
root@instance1:~# cat /etc/systemd/system/router-rules.service
|
86
|
+
|
87
|
+
[Unit]
|
88
|
+
|
89
|
+
Description = Apply base firewall rules for router functionality
|
90
|
+
|
91
|
+
|
92
|
+
|
93
|
+
[Service]
|
94
|
+
|
95
|
+
Type=oneshot
|
96
|
+
|
97
|
+
ExecStart=/etc/network/iptables
|
98
|
+
|
99
|
+
|
100
|
+
|
101
|
+
[Install]
|
102
|
+
|
103
|
+
WantedBy=network-pre.target
|
104
|
+
|
105
|
+
root@instance1:~# systemctl enable router-rules.service
|
106
|
+
|
107
|
+
root@instance1:~# reboot
|
108
|
+
|
109
|
+
```
|
110
|
+
|
111
|
+
再起動後、
|
112
|
+
|
113
|
+
```
|
114
|
+
|
115
|
+
root@instance1:~# systemctl status router-rules.service
|
116
|
+
|
117
|
+
● router-rules.service - Apply base firewall rules for router functionality
|
118
|
+
|
119
|
+
Loaded: loaded (/etc/systemd/system/router-rules.service; enabled; vendor preset: enabled)
|
120
|
+
|
121
|
+
Active: inactive (dead) since Thu 2019-05-16 03:21:48 JST; 22s ago
|
122
|
+
|
123
|
+
Process: 619 ExecStart=/etc/network/iptables (code=exited, status=0/SUCCESS)
|
124
|
+
|
125
|
+
Main PID: 619 (code=exited, status=0/SUCCESS)
|
126
|
+
|
127
|
+
|
128
|
+
|
129
|
+
May 16 03:21:48 instance1 systemd[1]: Starting Apply base firewall rules for router functionality...
|
130
|
+
|
131
|
+
May 16 03:21:48 instance1 iptables[619]: iptables-restore v1.6.0: Set cali40masq-ipam-pools doesn't exist.
|
132
|
+
|
133
|
+
May 16 03:21:48 instance1 iptables[619]: Error occurred at line: 179
|
134
|
+
|
135
|
+
May 16 03:21:48 instance1 iptables[619]: Try `iptables-restore -h' or 'iptables-restore --help' for more information.
|
136
|
+
|
137
|
+
May 16 03:21:48 instance1 systemd[1]: Started Apply base firewall rules for router functionality.
|
138
|
+
|
139
|
+
```
|
140
|
+
|
141
|
+
と表示されます。
|
2
追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -37,3 +37,29 @@
|
|
37
37
|
|
38
38
|
|
39
39
|
`etc/network/if-pre-up.d/iptables_start`をログイン後実行するとその設定は維持されます。
|
40
|
+
|
41
|
+
|
42
|
+
|
43
|
+
### 追記2019/5/16
|
44
|
+
|
45
|
+
いくつか挙動を確認したところ、どうやら`iptables-restore`が実行されるタイミングで、設定の反映が途中で止まるようでした。
|
46
|
+
|
47
|
+
ログを見たところ、
|
48
|
+
|
49
|
+
``` log
|
50
|
+
|
51
|
+
ifup[829]: iptables-restore v1.6.0: Set cali40masq-ipam-pools doesn't exist.
|
52
|
+
|
53
|
+
ifup[829]: Error occurred at line: 179
|
54
|
+
|
55
|
+
```
|
56
|
+
|
57
|
+
とありまして、関連する記事としては、[StarlingX Projectの開発者ページ?](https://bugs.launchpad.net/starlingx/+bug/1815124)がありまして、
|
58
|
+
|
59
|
+
puppetなるソフトウェアと、DockerやKubernetesで指定したiptablesの内容が競合して、適用されなくなるバグがあると報告しています。
|
60
|
+
|
61
|
+
|
62
|
+
|
63
|
+
しかし、puppetはinstallしていません。
|
64
|
+
|
65
|
+
/if-pre-up.d以下で、iptablesをいじるのは`iptables_start`のみなのですが、それでも何かとぶつかっているのでしょうか。
|
1
誤字
test
CHANGED
File without changes
|
test
CHANGED
@@ -36,4 +36,4 @@
|
|
36
36
|
|
37
37
|
|
38
38
|
|
39
|
-
`etc/network/if-pre-up.d/iptables_start`をログイン後
|
39
|
+
`etc/network/if-pre-up.d/iptables_start`をログイン後実行するとその設定は維持されます。
|